ouisys-component-library 0.0.13 → 0.0.14

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 (50) hide show
  1. package/build/index.css +2 -0
  2. package/build/index.css.map +1 -0
  3. package/build/index.d.ts +217 -0
  4. package/build/index.js +2 -0
  5. package/build/index.js.map +1 -0
  6. package/build/index.mjs +2 -0
  7. package/build/index.mjs.map +1 -0
  8. package/build/src/Button/Button.d.ts +3 -0
  9. package/build/src/Button/Button.stories.d.ts +41 -0
  10. package/build/src/Button/Button.test.d.ts +1 -0
  11. package/build/src/Button/Button.types.d.ts +10 -0
  12. package/build/src/Disclaimers/Disclaimers.d.ts +3 -0
  13. package/build/src/Disclaimers/Disclaimers.stories.d.ts +41 -0
  14. package/build/src/Disclaimers/Disclaimers.test.d.ts +1 -0
  15. package/build/src/Disclaimers/Disclaimers.types.d.ts +36 -0
  16. package/build/src/ExtraDisclaimers/ExtraDisclaimers.d.ts +3 -0
  17. package/build/src/ExtraDisclaimers/ExtraDisclaimers.stories.d.ts +41 -0
  18. package/build/src/ExtraDisclaimers/ExtraDisclaimers.test.d.ts +1 -0
  19. package/build/src/ExtraDisclaimers/ExtraDisclaimers.types.d.ts +8 -0
  20. package/build/src/Input/Input.d.ts +3 -0
  21. package/build/src/Input/Input.stories.d.ts +5 -0
  22. package/build/src/Input/Input.types.d.ts +44 -0
  23. package/build/src/Intl/Intl.d.ts +18 -0
  24. package/build/src/LanguageSwitcher/LanguageSwitcher.d.ts +3 -0
  25. package/build/src/LanguageSwitcher/LanguageSwitcher.stories.d.ts +38 -0
  26. package/build/src/LanguageSwitcher/LanguageSwitcher.test.d.ts +1 -0
  27. package/build/src/LanguageSwitcher/LanguageSwitcher.types.d.ts +13 -0
  28. package/build/src/Link/Link.d.ts +3 -0
  29. package/build/src/Link/Link.stories.d.ts +51 -0
  30. package/build/src/Link/Link.test.d.ts +1 -0
  31. package/build/src/Link/Link.types.d.ts +11 -0
  32. package/build/src/MOLink/MOLink.d.ts +4 -0
  33. package/build/src/MOLink/MOLink.stories.d.ts +32 -0
  34. package/build/src/MOLink/MOLink.test.d.ts +1 -0
  35. package/build/src/MOLink/MOLink.types.d.ts +10 -0
  36. package/build/src/PricePoint/PricePoint.d.ts +3 -0
  37. package/build/src/PricePoint/PricePoint.stories.d.ts +41 -0
  38. package/build/src/PricePoint/PricePoint.test.d.ts +1 -0
  39. package/build/src/PricePoint/PricePoint.types.d.ts +9 -0
  40. package/build/src/Select/Select.d.ts +3 -0
  41. package/build/src/Select/Select.stories.d.ts +5 -0
  42. package/build/src/Select/Select.types.d.ts +30 -0
  43. package/build/src/TopLegals/TopLegals.d.ts +3 -0
  44. package/build/src/TopLegals/TopLegals.stories.d.ts +41 -0
  45. package/build/src/TopLegals/TopLegals.test.d.ts +1 -0
  46. package/build/src/TopLegals/TopLegals.types.d.ts +8 -0
  47. package/build/src/custom-types.d.ts +8 -0
  48. package/build/src/index.d.ts +16 -0
  49. package/build/src/utils/test/index.d.ts +14 -0
  50. package/package.json +1 -1
@@ -0,0 +1,2 @@
1
+ .Disclaimers-module_wrapper__yyrGN{background-color:red}.Input-module_wrapper__bzo7K input,.Input-module_wrapper__bzo7K select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;display:inline-block;margin:8px 0;padding:12px 20px;width:100%}.Input-module_wrapper__bzo7K input[type=submit]{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:8px 0;padding:14px 20px;width:100%}.Input-module_wrapper__bzo7K input[type=submit]:hover{background-color:#45a049}.Input-module_wrapper__bzo7K .Input-module_error__rkwNz{color:red}.Select-module_wrapper__FuUXB input,.Select-module_wrapper__FuUXB select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;display:inline-block;margin:8px 0;padding:12px 20px;width:100%}.Select-module_wrapper__FuUXB input[type=submit]{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:8px 0;padding:14px 20px;width:100%}.Select-module_wrapper__FuUXB input[type=submit]:hover{background-color:#45a049}.Select-module_wrapper__FuUXB .Select-module_error__GpAw6{color:red}
2
+ /*# sourceMappingURL=index.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Disclaimers.module.scss","Input.module.scss","Select.module.scss"],"names":[],"mappings":"AAAA,mCACE,oBAAuB,CCDzB,uEAME,qBAAsB,CACtB,iBAAkB,CAClB,qBAAsB,CAHtB,oBAAqB,CADrB,YAAa,CADb,iBAAkB,CADlB,UAMwB,CAE1B,gDAEE,wBAAyB,CAIzB,WAAY,CACZ,iBAAkB,CAJlB,UAAY,CAKZ,cAAe,CAHf,YAAa,CADb,iBAAkB,CAHlB,UAOiB,CAEnB,sDACE,wBAA2B,CAE7B,wDACE,SAAY,CCxBd,yEAME,qBAAsB,CACtB,iBAAkB,CAClB,qBAAsB,CAHtB,oBAAqB,CADrB,YAAa,CADb,iBAAkB,CADlB,UAMwB,CAE1B,iDAEE,wBAAyB,CAIzB,WAAY,CACZ,iBAAkB,CAJlB,UAAY,CAKZ,cAAe,CAHf,YAAa,CADb,iBAAkB,CAHlB,UAOiB,CAEnB,uDACE,wBAA2B,CAE7B,0DACE,SAAY","file":"index.css","sourcesContent":[".wrapper {\n background-color: red; }\n",".wrapper input,\n.wrapper select {\n width: 100%;\n padding: 12px 20px;\n margin: 8px 0;\n display: inline-block;\n border: 1px solid #ccc;\n border-radius: 4px;\n box-sizing: border-box; }\n\n.wrapper input[type='submit'] {\n width: 100%;\n background-color: #4caf50;\n color: white;\n padding: 14px 20px;\n margin: 8px 0;\n border: none;\n border-radius: 4px;\n cursor: pointer; }\n\n.wrapper input[type='submit']:hover {\n background-color: #45a049; }\n\n.wrapper .error {\n color: red; }\n",".wrapper input,\n.wrapper select {\n width: 100%;\n padding: 12px 20px;\n margin: 8px 0;\n display: inline-block;\n border: 1px solid #ccc;\n border-radius: 4px;\n box-sizing: border-box; }\n\n.wrapper input[type='submit'] {\n width: 100%;\n background-color: #4caf50;\n color: white;\n padding: 14px 20px;\n margin: 8px 0;\n border: none;\n border-radius: 4px;\n cursor: pointer; }\n\n.wrapper input[type='submit']:hover {\n background-color: #45a049; }\n\n.wrapper .error {\n color: red; }\n"]}
@@ -0,0 +1,217 @@
1
+ import * as React$1 from 'react';
2
+
3
+ declare type IOptInFlowName = 'Block' | 'Click to sms' | 'Hybrid Pin' | 'Msisdn to sms' | 'Not available' | 'Pin' | 'Redirect' | 'To be determined' | 'USSD' | '3G click';
4
+ declare type ITracker = {
5
+ advancedInFlow: (flow: string, action: string, args?: any) => void;
6
+ advancedInPreFlow: (label: string, args?: any) => void;
7
+ recedeInFlow: (flow: string, newState: string, args?: any) => void;
8
+ customEvent: (category: string, action: string, label: string, arg?: any) => void;
9
+ sendOptInFlowEvent: (optInFlowName: IOptInFlowName) => void;
10
+ };
11
+
12
+ interface interfaceButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {
13
+ children: React.ReactNode;
14
+ className?: string;
15
+ dataQaId?: string;
16
+ isDCBP?: boolean;
17
+ isMCP?: boolean;
18
+ tracker?: ITracker;
19
+ }
20
+
21
+ declare function Button({ children, className, dataQaId, isDCBP, isMCP, tracker, type, onClick, ...props }: interfaceButton): JSX.Element;
22
+
23
+ declare enum ILegalFlows {
24
+ PIN = "pin",
25
+ MO = "mo",
26
+ ONE_CLICK = "oneClick",
27
+ CLICK_2SMS = "click2sms",
28
+ MO_REDIR = "moRedir",
29
+ USSD = "ussd",
30
+ TPAY_HE = "tpayHe"
31
+ }
32
+ interface ILegals {
33
+ id: number;
34
+ country: string;
35
+ service: string;
36
+ scenario: string;
37
+ language: string;
38
+ top_legal: string;
39
+ price_point: string;
40
+ disclaimer: string;
41
+ date_created: string;
42
+ extra_disclaimer: string;
43
+ mcc_disclaimer: {
44
+ [key: string]: string;
45
+ } | null;
46
+ operator_price_point: {
47
+ [key: string]: string;
48
+ } | null;
49
+ flow?: ILegalFlows;
50
+ }
51
+ interface DisclaimersProps {
52
+ locale: string;
53
+ legals: Array<ILegals>;
54
+ className?: string;
55
+ flow?: ILegalFlows;
56
+ mcc?: string;
57
+ dataQaId?: string;
58
+ }
59
+
60
+ declare function Disclaimers({ locale, className, legals, flow, dataQaId, mcc }: DisclaimersProps): JSX.Element;
61
+
62
+ interface ExtraDisclaimersProps {
63
+ locale: string;
64
+ legals: Array<ILegals>;
65
+ className?: string;
66
+ flow?: ILegalFlows;
67
+ dataQaId?: string;
68
+ }
69
+
70
+ declare function ExtraDisclaimers({ locale, className, legals, flow, dataQaId }: ExtraDisclaimersProps): JSX.Element;
71
+
72
+ interface InputProps extends React.HTMLAttributes<HTMLInputElement> {
73
+ value: string;
74
+ label?: string;
75
+ onChange: React.FocusEventHandler<HTMLInputElement> | undefined;
76
+ type: InputType;
77
+ placeholder?: string;
78
+ error?: string;
79
+ iconPosition?: InputIconPosition;
80
+ size?: InputSize;
81
+ clearable?: boolean;
82
+ mask?: InputMaskTypes;
83
+ children?: React.Component;
84
+ hint?: string;
85
+ dataQaId?: string;
86
+ disabled?: boolean;
87
+ readOnly?: boolean;
88
+ required?: boolean;
89
+ maxLength?: number;
90
+ minLength?: number;
91
+ wrapperClassName?: string;
92
+ onBlur?: React.FocusEventHandler<HTMLInputElement> | undefined;
93
+ }
94
+ declare enum InputType {
95
+ Text = "text",
96
+ Number = "number",
97
+ Email = "email",
98
+ Password = "password",
99
+ Search = "search",
100
+ Telephone = "tel",
101
+ URL = "url"
102
+ }
103
+ declare enum InputSize {
104
+ Medium = "Medium",
105
+ Large = "Large"
106
+ }
107
+ declare enum InputIconPosition {
108
+ Left = "Left",
109
+ Right = "Right"
110
+ }
111
+ declare enum InputMaskTypes {
112
+ Telephone = "telephone",
113
+ CreditCard = "credit_card"
114
+ }
115
+
116
+ declare function Input({ wrapperClassName, dataQaId, id, value, placeholder, disabled, readOnly, error, type, size, onChange, ...props }: InputProps): JSX.Element;
117
+
118
+ interface IHash {
119
+ [key: string]: string;
120
+ }
121
+ declare function IntlProvider({ locale, messages, children }: {
122
+ locale: string;
123
+ messages: IHash;
124
+ children: React$1.ReactChild | JSX.Element[] | JSX.Element;
125
+ }): JSX.Element;
126
+ declare function injectIntl(Child: React$1.ComponentType<any>): (props: any) => JSX.Element;
127
+ declare function defineMessages(messageDescriptors: any): any;
128
+
129
+ declare type typeLanguageSwitcherOptions = {
130
+ value: string;
131
+ label: string;
132
+ };
133
+ interface interfaceLanguageSwitcher {
134
+ locale: string;
135
+ switchLang: (lang: string) => void;
136
+ options: Array<typeLanguageSwitcherOptions>;
137
+ className?: string;
138
+ dataQaId?: string;
139
+ tracker?: ITracker;
140
+ }
141
+
142
+ declare function LanguageSwitcher({ locale, switchLang, options, className, dataQaId, tracker }: interfaceLanguageSwitcher): JSX.Element | null;
143
+
144
+ interface interfaceLink extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
145
+ children: React.ReactNode;
146
+ className?: string;
147
+ dataQaId?: string;
148
+ isDCBP?: boolean;
149
+ isMCP?: boolean;
150
+ locale?: string;
151
+ tracker?: ITracker;
152
+ }
153
+
154
+ declare function Link({ children, className, dataQaId, href, isDCBP, isMCP, locale, tracker, onClick, ...props }: interfaceLink): JSX.Element;
155
+
156
+ declare type IKeywordShortcode = {
157
+ keyword: string;
158
+ shortcode: string;
159
+ };
160
+ declare type MOLinkProps = {
161
+ keywordAndShortcode: IKeywordShortcode;
162
+ children: React.ReactNode;
163
+ dataQaId?: string;
164
+ } & React.HTMLAttributes<HTMLAnchorElement>;
165
+
166
+ declare const MOLink: React$1.ComponentType<MOLinkProps>;
167
+
168
+ interface PricePointProps {
169
+ locale: string;
170
+ legals: Array<ILegals>;
171
+ operator?: string;
172
+ className?: string;
173
+ flow?: ILegalFlows;
174
+ dataQaId?: string;
175
+ }
176
+
177
+ declare function PricePoint({ locale, className, legals, flow, dataQaId, operator }: PricePointProps): JSX.Element;
178
+
179
+ interface SelectProps extends React.HTMLAttributes<HTMLSelectElement> {
180
+ value: string;
181
+ label?: string;
182
+ onChange: React.ChangeEventHandler<HTMLSelectElement> | undefined;
183
+ type?: SelectType;
184
+ placeholder?: string;
185
+ error?: string;
186
+ dataQaId?: string;
187
+ disabled?: boolean;
188
+ readOnly?: boolean;
189
+ required?: boolean;
190
+ maxLength?: number;
191
+ minLength?: number;
192
+ wrapperClassName?: string;
193
+ options?: SelectOption[];
194
+ onBlur?: React.ChangeEventHandler<HTMLSelectElement> | undefined;
195
+ firstOptionText?: string;
196
+ }
197
+ interface SelectOption {
198
+ value: string;
199
+ label: string;
200
+ }
201
+ declare enum SelectType {
202
+ Country = "country"
203
+ }
204
+
205
+ declare function Select({ wrapperClassName, dataQaId, id, value, placeholder, disabled, readOnly, error, type, onChange, options, firstOptionText, ...props }: SelectProps): JSX.Element;
206
+
207
+ interface TopLegalsProps {
208
+ locale: string;
209
+ legals: Array<ILegals>;
210
+ className?: string;
211
+ flow?: ILegalFlows;
212
+ dataQaId?: string;
213
+ }
214
+
215
+ declare function TopLegals({ locale, className, legals, flow, dataQaId }: TopLegalsProps): JSX.Element;
216
+
217
+ export { Button, Disclaimers, ExtraDisclaimers, IKeywordShortcode, Input, InputType, IntlProvider, LanguageSwitcher, Link, MOLink, PricePoint, Select, SelectType, TopLegals, defineMessages, injectIntl };
package/build/index.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),a=require("classnames"),n=require("react");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var a=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var t=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(a,n,t.get?t:{enumerable:!0,get:function(){return e[n]}})}})),a.default=e,Object.freeze(a)}var i=t(a),l=t(n),o=r(n);var s="Disclaimers-module_wrapper__yyrGN";var c,d,u,m,p="Input-module_wrapper__bzo7K",g="Input-module_error__rkwNz";exports.InputType=void 0,(c=exports.InputType||(exports.InputType={})).Text="text",c.Number="number",c.Email="email",c.Password="password",c.Search="search",c.Telephone="tel",c.URL="url",function(e){e.Medium="Medium",e.Large="Large"}(d||(d={})),function(e){e.Left="Left",e.Right="Right"}(u||(u={})),function(e){e.Telephone="telephone",e.CreditCard="credit_card"}(m||(m={}));var v=o.createContext({locale:"en",messages:{},intl:{formatMessage:function(e,a){return e.id,e.defaultMessage,""}}});function f(e){return e}exports.defineMessages=f;var h=[{value:"en",label:"English"},{value:"ar",label:"عربى"}];var M=function(e,a){return"undefined"!=typeof navigator&&(/iPhone/i.test(navigator.userAgent)||/Mac OS/i.test(navigator.userAgent))?a?"sms:/open?addresses=".concat(e.shortcode,"&body=").concat(e.keyword):"sms:".concat(e.shortcode,"&body=").concat(e.keyword):["com.facebook.orca","com.facebook.katana","com.instagram.android"].some((function(e){return new RegExp(e,"ig").test(window.pac_analytics.visitor["x-requested-with"])}))?"/mo-redirect-util/".concat(e.shortcode,"/").concat(e.keyword):window.pac_analytics.visitor["x-requested-with"]&&null!==window.pac_analytics.visitor["x-requested-with"]&&-1!==window.pac_analytics.visitor["x-requested-with"].indexOf("com.facebook")?"sms://".concat(e.shortcode,"?body=").concat(e.keyword):"sms:".concat(e.shortcode,"?body=").concat(e.keyword)};var b,S="Select-module_wrapper__FuUXB",y="Select-module_error__GpAw6";exports.SelectType=void 0,(exports.SelectType||(exports.SelectType={})).Country="country",function(e){e.Medium="Medium",e.Large="Large"}(b||(b={}));var C={GB:"United Kingdom",US:"United States",AF:"Afghanistan",AL:"Albania",DZ:"Algeria",AD:"Andorra",AO:"Angola",AI:"Anguilla",AG:"Antigua and Barbuda",AR:"Argentina",AM:"Armenia",AW:"Aruba",AU:"Australia",AT:"Austria",AZ:"Azerbaijan",BS:"Bahamas",BH:"Bahrain",BD:"Bangladesh",BB:"Barbados",BY:"Belarus",BE:"Belgium",BZ:"Belize",BJ:"Benin",BM:"Bermuda",BT:"Bhutan",BO:"Bolivia",BA:"Bosnia and Herzegovina",BW:"Botswana",BR:"Brazil",IO:"British Indian Ocean Territory",BN:"Brunei",BG:"Bulgaria",BF:"Burkina Faso",BI:"Burundi",KH:"Cambodia",CM:"Cameroon",CA:"Canada",CV:"Cape Verde",KY:"Cayman Islands",CF:"Central African Republic",TD:"Chad",CL:"Chile",CN:"China",CO:"Colombia",KM:"Comoros",CG:"Congo",CD:"Congo Democratic Republic",CK:"Cook Islands",CR:"Costa Rica",CI:"Cote Divoire",HR:"Croatia",CU:"Cuba",CW:"Curaçao",CY:"Cyprus",CZ:"CzechRepublic",DK:"Denmark",DJ:"Djibouti",DM:"Dominica",DO:"Dominican Republic",EC:"Ecuador",EG:"Egypt",SV:"El Salvador",GQ:"Equatorial Guinea",ER:"Eritrea",EE:"Estonia",ET:"Ethiopia",FK:"Falkland Islands",FO:"Faroe Islands",FJ:"Fiji",FI:"Finland",FR:"France",GF:"French Guiana",PF:"French Polynesia",GA:"Gabon",GM:"Gambia",GE:"Georgia",DE:"Germany",GH:"Ghana",GI:"Gibraltar",GR:"Greece",GL:"Greenland",GD:"Grenada",GP:"Guadeloupe",GU:"Guam",GT:"Guatemala",GN:"Guinea",GW:"Guinea Bissau",GY:"Guyana",HT:"Haiti",VA:"Vatican City",HN:"Honduras",HK:"HongKong",HU:"Hungary",IS:"Iceland",IN:"India",ID:"Indonesia",IR:"Iran",IQ:"Iraq",IE:"Ireland",IL:"Israel",IT:"Italy",JM:"Jamaica",JP:"Japan",JO:"Jordan",KZ:"Kazakhstan",KE:"Kenya",KI:"Kiribati",KR:"Korea, Republic of",KP:"Korea, Democratic People's Republic of",KW:"Kuwait",KG:"Kyrgyzstan",LA:"Laos",LV:"Latvia",LB:"Lebanon",LS:"Lesotho",LR:"Liberia",LY:"Libya",LI:"Liechtenstein",LT:"Lithuania",LU:"Luxembourg",MO:"Macao",MG:"Madagascar",MW:"Malawi",MY:"Malaysia",MV:"Maldives",ML:"Mali",MT:"Malta",MH:"Marshall Islands",MQ:"Martinique",MR:"Mauritania",MU:"Mauritius",YT:"Mayotte",MX:"Mexico",FM:"Micronesia",MD:"Moldova",MC:"Monaco",MN:"Mongolia",ME:"Montenegro",MS:"Montserrat",MA:"Morocco",MZ:"Mozambique",MM:"Myanmar",NA:"Namibia",NR:"Nauru",NP:"Nepal",NL:"Netherlands",NC:"New Caledonia",NZ:"New Zealand",NI:"Nicaragua",NE:"Niger",NG:"Nigeria",NU:"Niue",NF:"Norfolk Islands",NO:"Norway",OM:"Oman",PK:"Pakistan",PW:"Palau",PS:"Palestinian Territory",PA:"Panama",PG:"Papua New Guinea",PY:"Paraguay",PE:"Peru",PH:"Philippines",PN:"Pitcairn",PL:"Poland",PT:"Portugal",PR:"Puerto Rico",QA:"Qatar",RE:"Reunion",MKD:"Macedonia",RO:"Romania",RW:"Rwanda",SH:"Saint Helena",LC:"Saint Lucia",MF:"Saint Martin",PM:"Saint Pierre And Miquelon",WS:"Samoa",SM:"San Marino",ST:"Sao Tome And Principe",SA:"Saudi Arabia",SN:"Senegal",RS:"Serbia",SC:"Seychelles",SL:"Sierra Leone",SG:"Singapore",SK:"Slovakia",SI:"Slovenia",SB:"Solomon Islands",SO:"Somalia",ZA:"South Africa",ES:"Spain",LK:"Sri Lanka",SD:"Sudan",SS:"South Sudan",SR:"Suriname",SJ:"Svalbard And Jan Mayen",SZ:"Swaziland",SE:"Sweden",CH:"Switzerland",SX:"Sint Maarten (Dutch part)",SY:"Syria",TW:"Taiwan",TJ:"Tajikistan",TZ:"Tanzania",TH:"Thailand",TL:"Timor Leste",TG:"Togo",TK:"Tokelau",TO:"Tonga",TT:"Trinidad And Tobago",TN:"Tunisia",TR:"Turkey",TM:"Turkmenistan",TV:"Tuvalu",UG:"Uganda",UA:"Ukraine",AE:"United Arab Emirates",UM:"United States Outlying Islands",UY:"Uruguay",UZ:"Uzbekistan",VU:"Vanuatu",VE:"Venezuela",VN:"Vietnam",VG:"Virgin Islands British",VI:"Virgin Islands US",WF:"Wallis And Futuna",EH:"Western Sahara",YE:"Yemen",ZM:"Zambia",ZW:"Zimbabwe"};exports.Button=function(a){var n=a.children,t=a.className,r=a.dataQaId,o=void 0===r?"button":r,s=a.isDCBP,c=void 0!==s&&s,d=a.isMCP,u=void 0!==d&&d,m=a.tracker,p=a.type,g=void 0===p?"button":p,v=a.onClick,f=e.__rest(a,["children","className","dataQaId","isDCBP","isMCP","tracker","type","onClick"]);return l.default.createElement("button",e.__assign({type:g,className:i.default("button",t,{dcbp:c,mcp:u}),"data-qa-id":o,onClick:function(e){m&&m.customEvent("button","click","click button"),v&&v(e)}},f),n)},exports.Disclaimers=function(e){var a=e.locale,n=e.className,t=void 0===n?"":n,r=e.legals,o=e.flow,c=e.dataQaId,d=void 0===c?"disclaimers":c,u=e.mcc,m=void 0===u?"":u,p=r.filter((function(e){return e.flow===o})),g=(o?p:r).reduce((function(e,a){return e[a.language]=a,e}),{}),v=(g[a]||"").disclaimer,f=(g[a]||"").mcc_disclaimer;return l.default.createElement("div",{"data-qa-id":d,className:i.default(s,t)},f&&m&&l.default.createElement("div",{dangerouslySetInnerHTML:{__html:f[m.toLowerCase()]}})||l.default.createElement("div",{dangerouslySetInnerHTML:{__html:v}})," ")},exports.ExtraDisclaimers=function(e){var a=e.locale,n=e.className,t=e.legals,r=e.flow,i=e.dataQaId,l=void 0===i?"extra-disclaimers-":i,s=t.filter((function(e){return e.flow===r})),c=((r&&!process.env.scenario?s:t).reduce((function(e,a){return e[a.language]=a,e}),{})[a]||"").extra_disclaimer;return o.createElement("div",{"data-qa-id":l,className:n},o.createElement("div",{dangerouslySetInnerHTML:{__html:c}}))},exports.Input=function(a){var n=a.wrapperClassName,t=void 0===n?"":n,r=a.dataQaId,l=void 0===r?"input-":r,s=a.id,c=a.value,d=a.placeholder,u=a.disabled,m=a.readOnly,v=a.error,f=a.type,h=a.size,M=a.onChange,b=e.__rest(a,["wrapperClassName","dataQaId","id","value","placeholder","disabled","readOnly","error","type","size","onChange"]);return o.createElement("div",{className:i.default(p,t)},b.label&&""!==b.label&&o.createElement("label",{"data-testid":"".concat(l,"-label"),htmlFor:s},b.label),o.createElement("input",e.__assign({"data-testid":l,name:s,id:s,value:c,placeholder:d,disabled:u,readOnly:m,onChange:M,type:f,size:parseInt(h||"",10)},b)),v&&o.createElement("div",{className:g},v))},exports.IntlProvider=function(e){var a=e.locale,n=e.messages,t=e.children;return o.createElement(v.Provider,{value:{locale:a,messages:n,intl:{formatMessage:function(e,a){var t=e.id,r=e.defaultMessage,i=n&&n[t]?n[t]:r||"";if(a){var l=Object.keys(a);Array.isArray(l)&&l.map((function(e){var n=i.replace("{".concat(e,"}"),a[e]);i=n}))}return i}}}},t)},exports.LanguageSwitcher=function(e){var a=e.locale,n=e.switchLang,t=e.options,r=void 0===t?h:t,o=e.className,s=void 0===o?"":o,c=e.dataQaId,d=void 0===c?"language-switcher":c,u=e.tracker;if(r.length>2)return l.default.createElement("select",{id:"languageSwitcher",className:i.default("languageSwitcher",s),"data-qa-id":d,value:a,onChange:function(e){var a=e.target.value;u&&u.customEvent("language","change","change language",{locale:a}),n(a)}},r.map((function(e){var a=e.value,n=e.label;return l.default.createElement("option",{key:a,value:a},n)})));if(2===r.length){var m=r[0],p=r[1],g=a===p.value;return l.default.createElement("button",{type:"button",id:"languageSwitcher",className:i.default("languageSwitcher",s),"data-qa-id":d,onClick:function(){var e=r[0],t=r[1],i=a===t.value?e.value:t.value;u&&u.customEvent("language","change","change language",{locale:i}),n(i)}},g?m.label:p.label)}return null},exports.Link=function(a){var n=a.children,t=a.className,r=a.dataQaId,o=void 0===r?"link":r,s=a.href,c=a.isDCBP,d=void 0!==c&&c,u=a.isMCP,m=void 0!==u&&u,p=a.locale,g=a.tracker,v=a.onClick,f=e.__rest(a,["children","className","dataQaId","href","isDCBP","isMCP","locale","tracker","onClick"]);return l.default.createElement("a",e.__assign({className:i.default("link",t,{dcbp:d,mcp:m}),"data-qa-id":o,href:s,hrefLang:p,onClick:function(e){g&&g.customEvent("link","click","click link",{link:s}),v&&v(e)}},f),n)},exports.MOLink=function(a){var n=a.keywordAndShortcode,t=a.className,r=a.dataQaId,i=void 0===r?"mo-link":r,l=a.children,s=e.__rest(a,["keywordAndShortcode","className","dataQaId","children"]);return o.createElement("a",e.__assign({href:M(n),className:t,"data-qa-id":i},s),l)},exports.PricePoint=function(e){var a=e.locale,n=e.className,t=void 0===n?"":n,r=e.legals,i=e.flow,l=e.dataQaId,s=void 0===l?"price-point":l,c=e.operator,d=r.filter((function(e){return e.flow===i})),u=(i?d:r).reduce((function(e,a){return e[a.language]=a,e}),{}),m=(u[a]||"").price_point,p=(u[a]||"").operator_price_point;return o.createElement("div",{"data-qa-id":s,className:t||""},p&&c&&o.createElement("div",{dangerouslySetInnerHTML:{__html:p[c.toUpperCase()]}})||o.createElement("div",{dangerouslySetInnerHTML:{__html:m}}))},exports.Select=function(a){var n=a.wrapperClassName,t=void 0===n?"":n,r=a.dataQaId,l=void 0===r?"select-":r,s=a.id,c=a.value,d=a.placeholder,u=a.disabled;a.readOnly;var m=a.error,p=a.type,g=a.onChange,v=a.options,f=void 0===v?[{value:"",label:""}]:v,h=a.firstOptionText,M=e.__rest(a,["wrapperClassName","dataQaId","id","value","placeholder","disabled","readOnly","error","type","onChange","options","firstOptionText"]);return o.createElement("div",{className:i.default(S,t)},M.label&&""!==M.label&&o.createElement("label",{"data-testid":"".concat(l,"-label"),htmlFor:s},M.label),o.createElement("select",e.__assign({"data-testid":l,name:s,id:s,value:c,placeholder:d,disabled:u,onChange:g},M),h&&o.createElement("option",null,h),p===exports.SelectType.Country&&Object.keys(C).map((function(e){return o.createElement("option",{value:e},C[e])}))||f.map((function(e){return o.createElement("option",{value:e.value},e.label)}))),m&&o.createElement("div",{className:y},m))},exports.TopLegals=function(e){var a=e.locale,n=e.className,t=void 0===n?"":n,r=e.legals,i=e.flow,l=e.dataQaId,s=void 0===l?"top-legals-":l,c=r.filter((function(e){return e.flow===i})),d=((i?c:r).reduce((function(e,a){return e[a.language]=a,e}),{})[a]||"").top_legal;return o.createElement("div",{"data-qa-id":s,className:t},o.createElement("div",{dangerouslySetInnerHTML:{__html:d}}))},exports.defineMessages=f,exports.injectIntl=function(a){return function(n){return o.createElement(v.Consumer,null,(function(t){var r=t.intl;return o.createElement(a,e.__assign({},n,{intl:r}))}))}};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{__rest as a,__assign as e}from"tslib";import n from"classnames";import*as t from"react";import r from"react";function i(t){var i=t.children,l=t.className,o=t.dataQaId,c=void 0===o?"button":o,d=t.isDCBP,s=void 0!==d&&d,u=t.isMCP,m=void 0!==u&&u,g=t.tracker,v=t.type,p=void 0===v?"button":v,h=t.onClick,f=a(t,["children","className","dataQaId","isDCBP","isMCP","tracker","type","onClick"]);return r.createElement("button",e({type:p,className:n("button",l,{dcbp:s,mcp:m}),"data-qa-id":c,onClick:function(a){g&&g.customEvent("button","click","click button"),h&&h(a)}},f),i)}var l="Disclaimers-module_wrapper__yyrGN";function o(a){var e=a.locale,t=a.className,i=void 0===t?"":t,o=a.legals,c=a.flow,d=a.dataQaId,s=void 0===d?"disclaimers":d,u=a.mcc,m=void 0===u?"":u,g=o.filter((function(a){return a.flow===c})),v=(c?g:o).reduce((function(a,e){return a[e.language]=e,a}),{}),p=(v[e]||"").disclaimer,h=(v[e]||"").mcc_disclaimer;return r.createElement("div",{"data-qa-id":s,className:n(l,i)},h&&m&&r.createElement("div",{dangerouslySetInnerHTML:{__html:h[m.toLowerCase()]}})||r.createElement("div",{dangerouslySetInnerHTML:{__html:p}})," ")}function c(a){var e=a.locale,n=a.className,r=a.legals,i=a.flow,l=a.dataQaId,o=void 0===l?"extra-disclaimers-":l,c=r.filter((function(a){return a.flow===i})),d=i&&!process.env.scenario?c:r,s=(d.reduce((function(a,e){return a[e.language]=e,a}),{})[e]||"").extra_disclaimer;return t.createElement("div",{"data-qa-id":o,className:n},t.createElement("div",{dangerouslySetInnerHTML:{__html:s}}))}var d,s,u,m,g="Input-module_wrapper__bzo7K",v="Input-module_error__rkwNz";function p(r){var i=r.wrapperClassName,l=void 0===i?"":i,o=r.dataQaId,c=void 0===o?"input-":o,d=r.id,s=r.value,u=r.placeholder,m=r.disabled,p=r.readOnly,h=r.error,f=r.type,M=r.size,S=r.onChange,b=a(r,["wrapperClassName","dataQaId","id","value","placeholder","disabled","readOnly","error","type","size","onChange"]);return t.createElement("div",{className:n(g,l)},b.label&&""!==b.label&&t.createElement("label",{"data-testid":"".concat(c,"-label"),htmlFor:d},b.label),t.createElement("input",e({"data-testid":c,name:d,id:d,value:s,placeholder:u,disabled:m,readOnly:p,onChange:S,type:f,size:parseInt(M||"",10)},b)),h&&t.createElement("div",{className:v},h))}!function(a){a.Text="text",a.Number="number",a.Email="email",a.Password="password",a.Search="search",a.Telephone="tel",a.URL="url"}(d||(d={})),function(a){a.Medium="Medium",a.Large="Large"}(s||(s={})),function(a){a.Left="Left",a.Right="Right"}(u||(u={})),function(a){a.Telephone="telephone",a.CreditCard="credit_card"}(m||(m={}));var h=t.createContext({locale:"en",messages:{},intl:{formatMessage:function(a,e){return a.id,a.defaultMessage,""}}});function f(a){var e=a.locale,n=a.messages,r=a.children;return t.createElement(h.Provider,{value:{locale:e,messages:n,intl:{formatMessage:function(a,e){var t=a.id,r=a.defaultMessage,i=n&&n[t]?n[t]:r||"";if(e){var l=Object.keys(e);Array.isArray(l)&&l.map((function(a){var n=i.replace("{".concat(a,"}"),e[a]);i=n}))}return i}}}},r)}function M(a){return function(n){return t.createElement(h.Consumer,null,(function(r){var i=r.intl;return t.createElement(a,e({},n,{intl:i}))}))}}function S(a){return a}exports.defineMessages=S;var b=[{value:"en",label:"English"},{value:"ar",label:"عربى"}];function C(a){var e=a.locale,t=a.switchLang,i=a.options,l=void 0===i?b:i,o=a.className,c=void 0===o?"":o,d=a.dataQaId,s=void 0===d?"language-switcher":d,u=a.tracker;if(l.length>2)return r.createElement("select",{id:"languageSwitcher",className:n("languageSwitcher",c),"data-qa-id":s,value:e,onChange:function(a){var e=a.target.value;u&&u.customEvent("language","change","change language",{locale:e}),t(e)}},l.map((function(a){var e=a.value,n=a.label;return r.createElement("option",{key:e,value:e},n)})));if(2===l.length){var m=l[0],g=l[1],v=e===g.value;return r.createElement("button",{type:"button",id:"languageSwitcher",className:n("languageSwitcher",c),"data-qa-id":s,onClick:function(){var a=l[0],n=l[1],r=e===n.value?a.value:n.value;u&&u.customEvent("language","change","change language",{locale:r}),t(r)}},v?m.label:g.label)}return null}function y(t){var i=t.children,l=t.className,o=t.dataQaId,c=void 0===o?"link":o,d=t.href,s=t.isDCBP,u=void 0!==s&&s,m=t.isMCP,g=void 0!==m&&m,v=t.locale,p=t.tracker,h=t.onClick,f=a(t,["children","className","dataQaId","href","isDCBP","isMCP","locale","tracker","onClick"]);return r.createElement("a",e({className:n("link",l,{dcbp:u,mcp:g}),"data-qa-id":c,href:d,hrefLang:v,onClick:function(a){p&&p.customEvent("link","click","click link",{link:d}),h&&h(a)}},f),i)}var E=function(a,e){return"undefined"!=typeof navigator&&(/iPhone/i.test(navigator.userAgent)||/Mac OS/i.test(navigator.userAgent))?e?"sms:/open?addresses=".concat(a.shortcode,"&body=").concat(a.keyword):"sms:".concat(a.shortcode,"&body=").concat(a.keyword):["com.facebook.orca","com.facebook.katana","com.instagram.android"].some((function(a){return new RegExp(a,"ig").test(window.pac_analytics.visitor["x-requested-with"])}))?"/mo-redirect-util/".concat(a.shortcode,"/").concat(a.keyword):window.pac_analytics.visitor["x-requested-with"]&&null!==window.pac_analytics.visitor["x-requested-with"]&&-1!==window.pac_analytics.visitor["x-requested-with"].indexOf("com.facebook")?"sms://".concat(a.shortcode,"?body=").concat(a.keyword):"sms:".concat(a.shortcode,"?body=").concat(a.keyword)},N=function(n){var r=n.keywordAndShortcode,i=n.className,l=n.dataQaId,o=void 0===l?"mo-link":l,c=n.children,d=a(n,["keywordAndShortcode","className","dataQaId","children"]);return t.createElement("a",e({href:E(r),className:i,"data-qa-id":o},d),c)};function I(a){var e=a.locale,n=a.className,r=void 0===n?"":n,i=a.legals,l=a.flow,o=a.dataQaId,c=void 0===o?"price-point":o,d=a.operator,s=i.filter((function(a){return a.flow===l})),u=(l?s:i).reduce((function(a,e){return a[e.language]=e,a}),{}),m=(u[e]||"").price_point,g=(u[e]||"").operator_price_point;return t.createElement("div",{"data-qa-id":c,className:r||""},g&&d&&t.createElement("div",{dangerouslySetInnerHTML:{__html:g[d.toUpperCase()]}})||t.createElement("div",{dangerouslySetInnerHTML:{__html:m}}))}var w,A,T="Select-module_wrapper__FuUXB",k="Select-module_error__GpAw6";!function(a){a.Country="country"}(w||(w={})),function(a){a.Medium="Medium",a.Large="Large"}(A||(A={}));var B={GB:"United Kingdom",US:"United States",AF:"Afghanistan",AL:"Albania",DZ:"Algeria",AD:"Andorra",AO:"Angola",AI:"Anguilla",AG:"Antigua and Barbuda",AR:"Argentina",AM:"Armenia",AW:"Aruba",AU:"Australia",AT:"Austria",AZ:"Azerbaijan",BS:"Bahamas",BH:"Bahrain",BD:"Bangladesh",BB:"Barbados",BY:"Belarus",BE:"Belgium",BZ:"Belize",BJ:"Benin",BM:"Bermuda",BT:"Bhutan",BO:"Bolivia",BA:"Bosnia and Herzegovina",BW:"Botswana",BR:"Brazil",IO:"British Indian Ocean Territory",BN:"Brunei",BG:"Bulgaria",BF:"Burkina Faso",BI:"Burundi",KH:"Cambodia",CM:"Cameroon",CA:"Canada",CV:"Cape Verde",KY:"Cayman Islands",CF:"Central African Republic",TD:"Chad",CL:"Chile",CN:"China",CO:"Colombia",KM:"Comoros",CG:"Congo",CD:"Congo Democratic Republic",CK:"Cook Islands",CR:"Costa Rica",CI:"Cote Divoire",HR:"Croatia",CU:"Cuba",CW:"Curaçao",CY:"Cyprus",CZ:"CzechRepublic",DK:"Denmark",DJ:"Djibouti",DM:"Dominica",DO:"Dominican Republic",EC:"Ecuador",EG:"Egypt",SV:"El Salvador",GQ:"Equatorial Guinea",ER:"Eritrea",EE:"Estonia",ET:"Ethiopia",FK:"Falkland Islands",FO:"Faroe Islands",FJ:"Fiji",FI:"Finland",FR:"France",GF:"French Guiana",PF:"French Polynesia",GA:"Gabon",GM:"Gambia",GE:"Georgia",DE:"Germany",GH:"Ghana",GI:"Gibraltar",GR:"Greece",GL:"Greenland",GD:"Grenada",GP:"Guadeloupe",GU:"Guam",GT:"Guatemala",GN:"Guinea",GW:"Guinea Bissau",GY:"Guyana",HT:"Haiti",VA:"Vatican City",HN:"Honduras",HK:"HongKong",HU:"Hungary",IS:"Iceland",IN:"India",ID:"Indonesia",IR:"Iran",IQ:"Iraq",IE:"Ireland",IL:"Israel",IT:"Italy",JM:"Jamaica",JP:"Japan",JO:"Jordan",KZ:"Kazakhstan",KE:"Kenya",KI:"Kiribati",KR:"Korea, Republic of",KP:"Korea, Democratic People's Republic of",KW:"Kuwait",KG:"Kyrgyzstan",LA:"Laos",LV:"Latvia",LB:"Lebanon",LS:"Lesotho",LR:"Liberia",LY:"Libya",LI:"Liechtenstein",LT:"Lithuania",LU:"Luxembourg",MO:"Macao",MG:"Madagascar",MW:"Malawi",MY:"Malaysia",MV:"Maldives",ML:"Mali",MT:"Malta",MH:"Marshall Islands",MQ:"Martinique",MR:"Mauritania",MU:"Mauritius",YT:"Mayotte",MX:"Mexico",FM:"Micronesia",MD:"Moldova",MC:"Monaco",MN:"Mongolia",ME:"Montenegro",MS:"Montserrat",MA:"Morocco",MZ:"Mozambique",MM:"Myanmar",NA:"Namibia",NR:"Nauru",NP:"Nepal",NL:"Netherlands",NC:"New Caledonia",NZ:"New Zealand",NI:"Nicaragua",NE:"Niger",NG:"Nigeria",NU:"Niue",NF:"Norfolk Islands",NO:"Norway",OM:"Oman",PK:"Pakistan",PW:"Palau",PS:"Palestinian Territory",PA:"Panama",PG:"Papua New Guinea",PY:"Paraguay",PE:"Peru",PH:"Philippines",PN:"Pitcairn",PL:"Poland",PT:"Portugal",PR:"Puerto Rico",QA:"Qatar",RE:"Reunion",MKD:"Macedonia",RO:"Romania",RW:"Rwanda",SH:"Saint Helena",LC:"Saint Lucia",MF:"Saint Martin",PM:"Saint Pierre And Miquelon",WS:"Samoa",SM:"San Marino",ST:"Sao Tome And Principe",SA:"Saudi Arabia",SN:"Senegal",RS:"Serbia",SC:"Seychelles",SL:"Sierra Leone",SG:"Singapore",SK:"Slovakia",SI:"Slovenia",SB:"Solomon Islands",SO:"Somalia",ZA:"South Africa",ES:"Spain",LK:"Sri Lanka",SD:"Sudan",SS:"South Sudan",SR:"Suriname",SJ:"Svalbard And Jan Mayen",SZ:"Swaziland",SE:"Sweden",CH:"Switzerland",SX:"Sint Maarten (Dutch part)",SY:"Syria",TW:"Taiwan",TJ:"Tajikistan",TZ:"Tanzania",TH:"Thailand",TL:"Timor Leste",TG:"Togo",TK:"Tokelau",TO:"Tonga",TT:"Trinidad And Tobago",TN:"Tunisia",TR:"Turkey",TM:"Turkmenistan",TV:"Tuvalu",UG:"Uganda",UA:"Ukraine",AE:"United Arab Emirates",UM:"United States Outlying Islands",UY:"Uruguay",UZ:"Uzbekistan",VU:"Vanuatu",VE:"Venezuela",VN:"Vietnam",VG:"Virgin Islands British",VI:"Virgin Islands US",WF:"Wallis And Futuna",EH:"Western Sahara",YE:"Yemen",ZM:"Zambia",ZW:"Zimbabwe"};function G(r){var i=r.wrapperClassName,l=void 0===i?"":i,o=r.dataQaId,c=void 0===o?"select-":o,d=r.id,s=r.value,u=r.placeholder,m=r.disabled;r.readOnly;var g=r.error,v=r.type,p=r.onChange,h=r.options,f=void 0===h?[{value:"",label:""}]:h,M=r.firstOptionText,S=a(r,["wrapperClassName","dataQaId","id","value","placeholder","disabled","readOnly","error","type","onChange","options","firstOptionText"]);return t.createElement("div",{className:n(T,l)},S.label&&""!==S.label&&t.createElement("label",{"data-testid":"".concat(c,"-label"),htmlFor:d},S.label),t.createElement("select",e({"data-testid":c,name:d,id:d,value:s,placeholder:u,disabled:m,onChange:p},S),M&&t.createElement("option",null,M),v===w.Country&&Object.keys(B).map((function(a){return t.createElement("option",{value:a},B[a])}))||f.map((function(a){return t.createElement("option",{value:a.value},a.label)}))),g&&t.createElement("div",{className:k},g))}function L(a){var e=a.locale,n=a.className,r=void 0===n?"":n,i=a.legals,l=a.flow,o=a.dataQaId,c=void 0===o?"top-legals-":o,d=i.filter((function(a){return a.flow===l})),s=((l?d:i).reduce((function(a,e){return a[e.language]=e,a}),{})[e]||"").top_legal;return t.createElement("div",{"data-qa-id":c,className:r},t.createElement("div",{dangerouslySetInnerHTML:{__html:s}}))}export{i as Button,o as Disclaimers,c as ExtraDisclaimers,p as Input,d as InputType,f as IntlProvider,C as LanguageSwitcher,y as Link,N as MOLink,I as PricePoint,G as Select,w as SelectType,L as TopLegals,S as defineMessages,M as injectIntl};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { interfaceButton } from './Button.types';
3
+ export declare function Button({ children, className, dataQaId, isDCBP, isMCP, tracker, type, onClick, ...props }: interfaceButton): JSX.Element;
@@ -0,0 +1,41 @@
1
+ import { Story } from '@storybook/react';
2
+ import { Button } from './Button';
3
+ import { interfaceButton } from './Button.types';
4
+ declare const _default: {
5
+ title: string;
6
+ component: typeof Button;
7
+ parameters: {
8
+ importObject: string;
9
+ importPath: string;
10
+ };
11
+ argTypes: {
12
+ className: {
13
+ name: string;
14
+ description: string;
15
+ control: string;
16
+ };
17
+ dataQaId: {
18
+ name: string;
19
+ description: string;
20
+ control: string;
21
+ };
22
+ isDCBP: {
23
+ name: string;
24
+ description: string;
25
+ control: string;
26
+ };
27
+ isMCP: {
28
+ name: string;
29
+ description: string;
30
+ control: string;
31
+ };
32
+ type: {
33
+ name: string;
34
+ description: string;
35
+ control: string;
36
+ options: string[];
37
+ };
38
+ };
39
+ };
40
+ export default _default;
41
+ export declare const Main: Story<interfaceButton>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { ITracker } from '../custom-types';
3
+ export interface interfaceButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {
4
+ children: React.ReactNode;
5
+ className?: string;
6
+ dataQaId?: string;
7
+ isDCBP?: boolean;
8
+ isMCP?: boolean;
9
+ tracker?: ITracker;
10
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { DisclaimersProps } from './Disclaimers.types';
3
+ export declare function Disclaimers({ locale, className, legals, flow, dataQaId, mcc }: DisclaimersProps): JSX.Element;
@@ -0,0 +1,41 @@
1
+ import { Story } from '@storybook/react';
2
+ import { DisclaimersProps } from './Disclaimers.types';
3
+ declare const _default: {
4
+ title: string;
5
+ component: string;
6
+ parameters: {
7
+ importObject: string;
8
+ importPath: string;
9
+ };
10
+ argTypes: {
11
+ locale: {
12
+ control: {
13
+ type: string;
14
+ };
15
+ description: string;
16
+ };
17
+ className: {
18
+ control: {
19
+ type: string;
20
+ };
21
+ description: string;
22
+ };
23
+ legals: {
24
+ description: string;
25
+ };
26
+ flow: {
27
+ control: {
28
+ type: string;
29
+ };
30
+ description: string;
31
+ };
32
+ dataQaId: {
33
+ control: {
34
+ type: string;
35
+ };
36
+ description: string;
37
+ };
38
+ };
39
+ };
40
+ export default _default;
41
+ export declare const Main: Story<DisclaimersProps>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,36 @@
1
+ export declare enum ILegalFlows {
2
+ PIN = "pin",
3
+ MO = "mo",
4
+ ONE_CLICK = "oneClick",
5
+ CLICK_2SMS = "click2sms",
6
+ MO_REDIR = "moRedir",
7
+ USSD = "ussd",
8
+ TPAY_HE = "tpayHe"
9
+ }
10
+ export interface ILegals {
11
+ id: number;
12
+ country: string;
13
+ service: string;
14
+ scenario: string;
15
+ language: string;
16
+ top_legal: string;
17
+ price_point: string;
18
+ disclaimer: string;
19
+ date_created: string;
20
+ extra_disclaimer: string;
21
+ mcc_disclaimer: {
22
+ [key: string]: string;
23
+ } | null;
24
+ operator_price_point: {
25
+ [key: string]: string;
26
+ } | null;
27
+ flow?: ILegalFlows;
28
+ }
29
+ export interface DisclaimersProps {
30
+ locale: string;
31
+ legals: Array<ILegals>;
32
+ className?: string;
33
+ flow?: ILegalFlows;
34
+ mcc?: string;
35
+ dataQaId?: string;
36
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { ExtraDisclaimersProps } from './ExtraDisclaimers.types';
3
+ export declare function ExtraDisclaimers({ locale, className, legals, flow, dataQaId }: ExtraDisclaimersProps): JSX.Element;
@@ -0,0 +1,41 @@
1
+ import { Story } from '@storybook/react';
2
+ import { ExtraDisclaimersProps } from './ExtraDisclaimers.types';
3
+ declare const _default: {
4
+ title: string;
5
+ component: string;
6
+ parameters: {
7
+ importObject: string;
8
+ importPath: string;
9
+ };
10
+ argTypes: {
11
+ locale: {
12
+ control: {
13
+ type: string;
14
+ };
15
+ description: string;
16
+ };
17
+ className: {
18
+ control: {
19
+ type: string;
20
+ };
21
+ description: string;
22
+ };
23
+ legals: {
24
+ description: string;
25
+ };
26
+ flow: {
27
+ control: {
28
+ type: string;
29
+ };
30
+ description: string;
31
+ };
32
+ dataQaId: {
33
+ control: {
34
+ type: string;
35
+ };
36
+ description: string;
37
+ };
38
+ };
39
+ };
40
+ export default _default;
41
+ export declare const Main: Story<ExtraDisclaimersProps>;
@@ -0,0 +1,8 @@
1
+ import { ILegalFlows, ILegals } from '../Disclaimers/Disclaimers.types';
2
+ export interface ExtraDisclaimersProps {
3
+ locale: string;
4
+ legals: Array<ILegals>;
5
+ className?: string;
6
+ flow?: ILegalFlows;
7
+ dataQaId?: string;
8
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { InputProps } from './Input.types';
3
+ export declare function Input({ wrapperClassName, dataQaId, id, value, placeholder, disabled, readOnly, error, type, size, onChange, ...props }: InputProps): JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { Meta, Story } from '@storybook/react';
2
+ import { InputProps } from './Input.types';
3
+ declare const _default: Meta<import("@storybook/react").Args>;
4
+ export default _default;
5
+ export declare const Input: Story<InputProps>;
@@ -0,0 +1,44 @@
1
+ /// <reference types="react" />
2
+ export interface InputProps extends React.HTMLAttributes<HTMLInputElement> {
3
+ value: string;
4
+ label?: string;
5
+ onChange: React.FocusEventHandler<HTMLInputElement> | undefined;
6
+ type: InputType;
7
+ placeholder?: string;
8
+ error?: string;
9
+ iconPosition?: InputIconPosition;
10
+ size?: InputSize;
11
+ clearable?: boolean;
12
+ mask?: InputMaskTypes;
13
+ children?: React.Component;
14
+ hint?: string;
15
+ dataQaId?: string;
16
+ disabled?: boolean;
17
+ readOnly?: boolean;
18
+ required?: boolean;
19
+ maxLength?: number;
20
+ minLength?: number;
21
+ wrapperClassName?: string;
22
+ onBlur?: React.FocusEventHandler<HTMLInputElement> | undefined;
23
+ }
24
+ export declare enum InputType {
25
+ Text = "text",
26
+ Number = "number",
27
+ Email = "email",
28
+ Password = "password",
29
+ Search = "search",
30
+ Telephone = "tel",
31
+ URL = "url"
32
+ }
33
+ export declare enum InputSize {
34
+ Medium = "Medium",
35
+ Large = "Large"
36
+ }
37
+ export declare enum InputIconPosition {
38
+ Left = "Left",
39
+ Right = "Right"
40
+ }
41
+ export declare enum InputMaskTypes {
42
+ Telephone = "telephone",
43
+ CreditCard = "credit_card"
44
+ }
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+ export interface IHash {
3
+ [key: string]: string;
4
+ }
5
+ export declare function IntlProvider({ locale, messages, children }: {
6
+ locale: string;
7
+ messages: IHash;
8
+ children: React.ReactChild | JSX.Element[] | JSX.Element;
9
+ }): JSX.Element;
10
+ export declare function Translate({ id, values, defaultMessage }: {
11
+ id: string;
12
+ values?: {
13
+ [key: string]: string;
14
+ };
15
+ defaultMessage?: string;
16
+ }): string;
17
+ export declare function injectIntl(Child: React.ComponentType<any>): (props: any) => JSX.Element;
18
+ export declare function defineMessages(messageDescriptors: any): any;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { interfaceLanguageSwitcher } from './LanguageSwitcher.types';
3
+ export declare function LanguageSwitcher({ locale, switchLang, options, className, dataQaId, tracker }: interfaceLanguageSwitcher): JSX.Element | null;
@@ -0,0 +1,38 @@
1
+ import { Story } from '@storybook/react';
2
+ import { LanguageSwitcher } from './LanguageSwitcher';
3
+ import { interfaceLanguageSwitcher } from './LanguageSwitcher.types';
4
+ declare const _default: {
5
+ title: string;
6
+ component: typeof LanguageSwitcher;
7
+ parameters: {
8
+ importObject: string;
9
+ importPath: string;
10
+ };
11
+ argTypes: {
12
+ locale: {
13
+ name: string;
14
+ description: string;
15
+ control: string;
16
+ };
17
+ switchLang: {
18
+ name: string;
19
+ description: string;
20
+ };
21
+ options: {
22
+ name: string;
23
+ description: string;
24
+ };
25
+ className: {
26
+ name: string;
27
+ description: string;
28
+ control: string;
29
+ };
30
+ dataQaId: {
31
+ name: string;
32
+ description: string;
33
+ control: string;
34
+ };
35
+ };
36
+ };
37
+ export default _default;
38
+ export declare const Main: Story<interfaceLanguageSwitcher>;
@@ -0,0 +1,13 @@
1
+ import { ITracker } from '../custom-types';
2
+ export declare type typeLanguageSwitcherOptions = {
3
+ value: string;
4
+ label: string;
5
+ };
6
+ export interface interfaceLanguageSwitcher {
7
+ locale: string;
8
+ switchLang: (lang: string) => void;
9
+ options: Array<typeLanguageSwitcherOptions>;
10
+ className?: string;
11
+ dataQaId?: string;
12
+ tracker?: ITracker;
13
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { interfaceLink } from './Link.types';
3
+ export declare function Link({ children, className, dataQaId, href, isDCBP, isMCP, locale, tracker, onClick, ...props }: interfaceLink): JSX.Element;
@@ -0,0 +1,51 @@
1
+ import { Story } from '@storybook/react';
2
+ import { Link } from './Link';
3
+ import { interfaceLink } from './Link.types';
4
+ declare const _default: {
5
+ title: string;
6
+ component: typeof Link;
7
+ parameters: {
8
+ importObject: string;
9
+ importPath: string;
10
+ };
11
+ argTypes: {
12
+ className: {
13
+ name: string;
14
+ description: string;
15
+ control: string;
16
+ };
17
+ dataQaId: {
18
+ name: string;
19
+ description: string;
20
+ control: string;
21
+ };
22
+ href: {
23
+ name: string;
24
+ description: string;
25
+ control: string;
26
+ };
27
+ isDCBP: {
28
+ name: string;
29
+ description: string;
30
+ control: string;
31
+ };
32
+ isMCP: {
33
+ name: string;
34
+ description: string;
35
+ control: string;
36
+ };
37
+ locale: {
38
+ name: string;
39
+ description: string;
40
+ control: string;
41
+ };
42
+ target: {
43
+ name: string;
44
+ description: string;
45
+ control: string;
46
+ options: string[];
47
+ };
48
+ };
49
+ };
50
+ export default _default;
51
+ export declare const Main: Story<interfaceLink>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { ITracker } from '../custom-types';
3
+ export interface interfaceLink extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
4
+ children: React.ReactNode;
5
+ className?: string;
6
+ dataQaId?: string;
7
+ isDCBP?: boolean;
8
+ isMCP?: boolean;
9
+ locale?: string;
10
+ tracker?: ITracker;
11
+ }
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { IKeywordShortcode, MOLinkProps } from './MOLink.types';
3
+ export declare const formatSMSLink: (keywordAndShortcode: IKeywordShortcode, useOpenAddresses?: boolean) => string;
4
+ export declare const MOLink: React.ComponentType<MOLinkProps>;
@@ -0,0 +1,32 @@
1
+ import { Story } from '@storybook/react';
2
+ import { MOLinkProps } from './MOLink.types';
3
+ declare const _default: {
4
+ title: string;
5
+ component: string;
6
+ parameters: {
7
+ importObject: string;
8
+ importPath: string;
9
+ };
10
+ argTypes: {
11
+ className: {
12
+ control: {
13
+ type: string;
14
+ };
15
+ description: string;
16
+ };
17
+ dataQaId: {
18
+ control: {
19
+ type: string;
20
+ };
21
+ description: string;
22
+ };
23
+ keywordAndShortcode: {
24
+ control: {
25
+ type: string;
26
+ };
27
+ description: string;
28
+ };
29
+ };
30
+ };
31
+ export default _default;
32
+ export declare const Main: Story<MOLinkProps>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export declare type IKeywordShortcode = {
3
+ keyword: string;
4
+ shortcode: string;
5
+ };
6
+ export declare type MOLinkProps = {
7
+ keywordAndShortcode: IKeywordShortcode;
8
+ children: React.ReactNode;
9
+ dataQaId?: string;
10
+ } & React.HTMLAttributes<HTMLAnchorElement>;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { PricePointProps } from './PricePoint.types';
3
+ export declare function PricePoint({ locale, className, legals, flow, dataQaId, operator }: PricePointProps): JSX.Element;
@@ -0,0 +1,41 @@
1
+ import { Story } from '@storybook/react';
2
+ import { PricePointProps } from './PricePoint.types';
3
+ declare const _default: {
4
+ title: string;
5
+ component: string;
6
+ parameters: {
7
+ importObject: string;
8
+ importPath: string;
9
+ };
10
+ argTypes: {
11
+ locale: {
12
+ control: {
13
+ type: string;
14
+ };
15
+ description: string;
16
+ };
17
+ className: {
18
+ control: {
19
+ type: string;
20
+ };
21
+ description: string;
22
+ };
23
+ legals: {
24
+ description: string;
25
+ };
26
+ flow: {
27
+ control: {
28
+ type: string;
29
+ };
30
+ description: string;
31
+ };
32
+ dataQaId: {
33
+ control: {
34
+ type: string;
35
+ };
36
+ description: string;
37
+ };
38
+ };
39
+ };
40
+ export default _default;
41
+ export declare const Main: Story<PricePointProps>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import { ILegalFlows, ILegals } from '../Disclaimers/Disclaimers.types';
2
+ export interface PricePointProps {
3
+ locale: string;
4
+ legals: Array<ILegals>;
5
+ operator?: string;
6
+ className?: string;
7
+ flow?: ILegalFlows;
8
+ dataQaId?: string;
9
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { SelectProps } from './Select.types';
3
+ export declare function Select({ wrapperClassName, dataQaId, id, value, placeholder, disabled, readOnly, error, type, onChange, options, firstOptionText, ...props }: SelectProps): JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { Meta, Story } from '@storybook/react';
2
+ import { SelectProps } from './Select.types';
3
+ declare const _default: Meta<import("@storybook/react").Args>;
4
+ export default _default;
5
+ export declare const Select: Story<SelectProps>;
@@ -0,0 +1,30 @@
1
+ /// <reference types="react" />
2
+ export interface SelectProps extends React.HTMLAttributes<HTMLSelectElement> {
3
+ value: string;
4
+ label?: string;
5
+ onChange: React.ChangeEventHandler<HTMLSelectElement> | undefined;
6
+ type?: SelectType;
7
+ placeholder?: string;
8
+ error?: string;
9
+ dataQaId?: string;
10
+ disabled?: boolean;
11
+ readOnly?: boolean;
12
+ required?: boolean;
13
+ maxLength?: number;
14
+ minLength?: number;
15
+ wrapperClassName?: string;
16
+ options?: SelectOption[];
17
+ onBlur?: React.ChangeEventHandler<HTMLSelectElement> | undefined;
18
+ firstOptionText?: string;
19
+ }
20
+ export interface SelectOption {
21
+ value: string;
22
+ label: string;
23
+ }
24
+ export declare enum SelectType {
25
+ Country = "country"
26
+ }
27
+ export declare enum InputSize {
28
+ Medium = "Medium",
29
+ Large = "Large"
30
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { TopLegalsProps } from './TopLegals.types';
3
+ export declare function TopLegals({ locale, className, legals, flow, dataQaId }: TopLegalsProps): JSX.Element;
@@ -0,0 +1,41 @@
1
+ import { Story } from '@storybook/react';
2
+ import { TopLegalsProps } from './TopLegals.types';
3
+ declare const _default: {
4
+ title: string;
5
+ component: string;
6
+ parameters: {
7
+ importObject: string;
8
+ importPath: string;
9
+ };
10
+ argTypes: {
11
+ locale: {
12
+ control: {
13
+ type: string;
14
+ };
15
+ description: string;
16
+ };
17
+ className: {
18
+ control: {
19
+ type: string;
20
+ };
21
+ description: string;
22
+ };
23
+ legals: {
24
+ description: string;
25
+ };
26
+ flow: {
27
+ control: {
28
+ type: string;
29
+ };
30
+ description: string;
31
+ };
32
+ dataQaId: {
33
+ control: {
34
+ type: string;
35
+ };
36
+ description: string;
37
+ };
38
+ };
39
+ };
40
+ export default _default;
41
+ export declare const Main: Story<TopLegalsProps>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ import { ILegalFlows, ILegals } from '../Disclaimers/Disclaimers.types';
2
+ export interface TopLegalsProps {
3
+ locale: string;
4
+ legals: Array<ILegals>;
5
+ className?: string;
6
+ flow?: ILegalFlows;
7
+ dataQaId?: string;
8
+ }
@@ -0,0 +1,8 @@
1
+ export declare type IOptInFlowName = 'Block' | 'Click to sms' | 'Hybrid Pin' | 'Msisdn to sms' | 'Not available' | 'Pin' | 'Redirect' | 'To be determined' | 'USSD' | '3G click';
2
+ export declare type ITracker = {
3
+ advancedInFlow: (flow: string, action: string, args?: any) => void;
4
+ advancedInPreFlow: (label: string, args?: any) => void;
5
+ recedeInFlow: (flow: string, newState: string, args?: any) => void;
6
+ customEvent: (category: string, action: string, label: string, arg?: any) => void;
7
+ sendOptInFlowEvent: (optInFlowName: IOptInFlowName) => void;
8
+ };
@@ -0,0 +1,16 @@
1
+ import { Button } from './Button/Button';
2
+ import { Disclaimers } from './Disclaimers/Disclaimers';
3
+ import { ExtraDisclaimers } from './ExtraDisclaimers/ExtraDisclaimers';
4
+ import { Input } from './Input/Input';
5
+ import { InputType } from './Input/Input.types';
6
+ import { defineMessages, injectIntl, IntlProvider } from './Intl/Intl';
7
+ import { LanguageSwitcher } from './LanguageSwitcher/LanguageSwitcher';
8
+ import { Link } from './Link/Link';
9
+ import { MOLink } from './MOLink/MOLink';
10
+ import { IKeywordShortcode } from './MOLink/MOLink.types';
11
+ import { PricePoint } from './PricePoint/PricePoint';
12
+ import { Select } from './Select/Select';
13
+ import { SelectType } from './Select/Select.types';
14
+ import { TopLegals } from './TopLegals/TopLegals';
15
+ export { Button, Disclaimers, ExtraDisclaimers, Input, InputType, defineMessages, injectIntl, IntlProvider, LanguageSwitcher, Link, MOLink, PricePoint, Select, SelectType, TopLegals };
16
+ export type { IKeywordShortcode };
@@ -0,0 +1,14 @@
1
+ import { RenderOptions } from '@testing-library/react';
2
+ import React, { ReactElement } from 'react';
3
+ import renderer from 'react-test-renderer';
4
+ declare const customRender: (ui: ReactElement, options?: Omit<RenderOptions, 'wrapper'>) => import("@testing-library/react").RenderResult<typeof import("@testing-library/dom/types/queries"), HTMLElement, HTMLElement>;
5
+ declare const jsonRenderer: (ui: React.ReactNode) => renderer.ReactTestRendererJSON | renderer.ReactTestRendererJSON[] | null;
6
+ declare const dummyTracker: {
7
+ advancedInFlow: () => undefined;
8
+ advancedInPreFlow: () => undefined;
9
+ recedeInFlow: () => undefined;
10
+ customEvent: () => undefined;
11
+ sendOptInFlowEvent: () => undefined;
12
+ };
13
+ export * from '@testing-library/react';
14
+ export { customRender as render, jsonRenderer, dummyTracker };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ouisys-component-library",
3
- "version": "0.0.13",
3
+ "version": "0.0.14",
4
4
  "description": "Ouisys Components",
5
5
  "main": "build/index.js",
6
6
  "module": "build/index.es.js",