pixelize-design-library 2.1.41 → 2.1.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { PhoneNumberInputProps } from "./PhoneNumberInputProps";
3
+ declare const PhoneNumberInput: ({ size, value, country, countries, placeholder, onChange, inputId, selectId, error, errorMessage, helperText, label, id, width, isInformation, informationMessage, isRequired, onBlur, onFocus, isReadOnly, height, autoComplete, showCountrySelect, ref, name, minW, maxW, ...rest }: PhoneNumberInputProps) => React.JSX.Element;
4
+ export default PhoneNumberInput;
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ var __rest = (this && this.__rest) || function (s, e) {
37
+ var t = {};
38
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
39
+ t[p] = s[p];
40
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
41
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
42
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
43
+ t[p[i]] = s[p[i]];
44
+ }
45
+ return t;
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ var react_1 = __importStar(require("react"));
52
+ var react_2 = require("@chakra-ui/react");
53
+ var ErrorMessage_1 = __importDefault(require("../Common/ErrorMessage"));
54
+ var HelperText_1 = __importDefault(require("../Common/HelperText"));
55
+ var FormLabel_1 = require("../Common/FormLabel");
56
+ var getFlagEmoji = function (countryCode) {
57
+ if (!countryCode)
58
+ return "";
59
+ return countryCode
60
+ .toUpperCase()
61
+ .replace(/./g, function (char) {
62
+ return String.fromCodePoint(127397 + char.charCodeAt(0));
63
+ });
64
+ };
65
+ var PhoneNumberInput = function (_a) {
66
+ var _b = _a.size, size = _b === void 0 ? "md" : _b, value = _a.value, country = _a.country, countries = _a.countries, _c = _a.placeholder, placeholder = _c === void 0 ? "Enter phone number" : _c, onChange = _a.onChange, inputId = _a.inputId, selectId = _a.selectId, error = _a.error, errorMessage = _a.errorMessage, helperText = _a.helperText, label = _a.label, id = _a.id, _d = _a.width, width = _d === void 0 ? "100%" : _d, isInformation = _a.isInformation, informationMessage = _a.informationMessage, isRequired = _a.isRequired, onBlur = _a.onBlur, onFocus = _a.onFocus, isReadOnly = _a.isReadOnly, height = _a.height, autoComplete = _a.autoComplete, _e = _a.showCountrySelect, showCountrySelect = _e === void 0 ? true : _e, ref = _a.ref, name = _a.name, minW = _a.minW, maxW = _a.maxW, rest = __rest(_a, ["size", "value", "country", "countries", "placeholder", "onChange", "inputId", "selectId", "error", "errorMessage", "helperText", "label", "id", "width", "isInformation", "informationMessage", "isRequired", "onBlur", "onFocus", "isReadOnly", "height", "autoComplete", "showCountrySelect", "ref", "name", "minW", "maxW"]);
67
+ var getCountryTelCode = (0, react_1.useCallback)(function (countryCode) {
68
+ var _a;
69
+ if (!countryCode)
70
+ return undefined;
71
+ return (_a = countries === null || countries === void 0 ? void 0 : countries.find(function (_a) {
72
+ var code = _a.code;
73
+ return countryCode === code;
74
+ })) === null || _a === void 0 ? void 0 : _a.dial_code;
75
+ }, [countries]);
76
+ var _f = (0, react_1.useState)(value), number = _f[0], setNumber = _f[1];
77
+ var _g = (0, react_1.useState)(country), selectedCountry = _g[0], setSelectedCountry = _g[1];
78
+ var _h = (0, react_1.useState)(country), countryCode = _h[0], setCountryCode = _h[1];
79
+ (0, react_1.useEffect)(function () {
80
+ if (country) {
81
+ var code = getCountryTelCode(country);
82
+ setSelectedCountry(country);
83
+ setCountryCode(code);
84
+ }
85
+ }, [country, getCountryTelCode]);
86
+ var handleCountryChange = function (e) {
87
+ var selected = e.target.value;
88
+ if (!selected) {
89
+ setSelectedCountry("");
90
+ setCountryCode("");
91
+ setNumber("");
92
+ onChange("");
93
+ return;
94
+ }
95
+ var code = getCountryTelCode(selected) || "";
96
+ setSelectedCountry(selected);
97
+ setCountryCode(code);
98
+ onChange("".concat(code).concat(number));
99
+ };
100
+ var handleNumberChange = function (e) {
101
+ if (countryCode) {
102
+ var numValue = e.target.value;
103
+ numValue = numValue.replace(/[^+\d\s]/g, "");
104
+ setNumber(numValue);
105
+ onChange("".concat(countryCode).concat(numValue));
106
+ }
107
+ else {
108
+ return;
109
+ }
110
+ };
111
+ return (react_1.default.createElement(react_2.FormControl, { w: width, minW: minW, maxW: maxW },
112
+ label && (react_1.default.createElement(FormLabel_1.TextLabel, { label: label, id: id, isInformation: isInformation, informationMessage: informationMessage, isRequired: isRequired })),
113
+ react_1.default.createElement(react_2.InputGroup, __assign({ size: size }, rest),
114
+ react_1.default.createElement(react_2.InputLeftElement, { width: showCountrySelect ? "4rem" : "2rem", height: "100%" },
115
+ showCountrySelect && react_1.default.createElement(react_1.default.Fragment, null,
116
+ react_1.default.createElement(react_2.Select, { position: "absolute", top: "0", left: "0", height: "100%", id: selectId, width: "4rem", opacity: 0, zIndex: 1, value: selectedCountry, onChange: handleCountryChange, lineHeight: "1.5rem" },
117
+ react_1.default.createElement("option", { value: "" }, "Select Country"),
118
+ countries.map(function (option) { return (react_1.default.createElement("option", { key: option.code, value: option.code }, option.country)); }))),
119
+ react_1.default.createElement(react_2.Flex, { pl: 2, width: "100%", alignItems: "center", justifyContent: "space-between" }, selectedCountry ? (react_1.default.createElement(react_2.Box, { fontSize: "1.2rem" }, getFlagEmoji(selectedCountry))) : (react_1.default.createElement(react_2.Icon, { viewBox: "0 0 24 24", boxSize: "1rem" },
120
+ react_1.default.createElement("path", { fill: "currentColor", d: "M6.62,10.79C8.06,13.62 10.38,15.94 13.21,17.38L15.41,15.18C15.79,14.8 16.33,14.67 16.8,14.82C18.17,15.27 19.65,15.5 21,15.5C21.55,15.5 22,15.95 22,16.5V20C22,20.55 21.55,21 21,21C10.61,21 3,13.39 3,3C3,2.45 3.45,2 4,2H7.5C8.05,2 8.5,2.45 8.5,3C8.5,4.35 8.73,5.83 9.18,7.2C9.33,7.67 9.2,8.21 8.82,8.59L6.62,10.79Z" }))))),
121
+ react_1.default.createElement(react_2.Input, { type: "tel", pl: showCountrySelect ? "4rem" : "2rem", value: number, id: inputId, onChange: handleNumberChange, onBlur: onBlur, onFocus: onFocus, isReadOnly: isReadOnly, name: name, size: size, height: height, ref: ref, autoComplete: autoComplete, placeholder: placeholder, disabled: !selectedCountry, isInvalid: error })),
122
+ error && react_1.default.createElement(ErrorMessage_1.default, { errorMessage: errorMessage }),
123
+ helperText && !error && react_1.default.createElement(HelperText_1.default, { helperText: helperText })));
124
+ };
125
+ exports.default = PhoneNumberInput;
@@ -0,0 +1,36 @@
1
+ /// <reference types="react" />
2
+ export type CountryOption = {
3
+ country_id: string | number;
4
+ code: string;
5
+ country: string;
6
+ dial_code: string;
7
+ };
8
+ export type PhoneNumberInputProps = {
9
+ label?: string;
10
+ id?: string;
11
+ size?: string;
12
+ value?: string;
13
+ country?: string;
14
+ placeholder?: string;
15
+ onChange: (value: string) => void;
16
+ countries: CountryOption[];
17
+ inputId?: string;
18
+ selectId?: string;
19
+ name?: string;
20
+ error?: boolean;
21
+ errorMessage?: string;
22
+ helperText?: string;
23
+ isInformation?: boolean;
24
+ informationMessage?: string;
25
+ isRequired?: boolean;
26
+ onBlur?: () => void;
27
+ onFocus?: () => void;
28
+ isReadOnly?: boolean;
29
+ ref?: React.Ref<HTMLInputElement>;
30
+ autoComplete?: string;
31
+ height?: string;
32
+ width?: string;
33
+ minW?: string;
34
+ maxW?: string;
35
+ showCountrySelect?: boolean;
36
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,11 +1,44 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
5
28
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var react_1 = __importDefault(require("react"));
29
+ var react_1 = __importStar(require("react"));
7
30
  var TextInput_1 = __importDefault(require("../Components/Input/TextInput"));
31
+ var PhoneNumberInput_1 = __importDefault(require("../Components/Input/PhoneNumberInput"));
8
32
  var InputPage = function () {
33
+ var _a = (0, react_1.useState)([]), countries = _a[0], setCountries = _a[1];
34
+ (0, react_1.useEffect)(function () {
35
+ fetch("https://dev.api.pixelizetech.com/account/api/allCountries")
36
+ .then(function (res) { return res.json(); })
37
+ .then(function (data) {
38
+ setCountries(data);
39
+ })
40
+ .catch(function (err) { return console.error("Error fetching countries:", err); });
41
+ }, []);
9
42
  return (react_1.default.createElement("div", { style: { width: "500px" } },
10
43
  react_1.default.createElement(TextInput_1.default, { label: "My Label", id: "input1", name: "hello",
11
44
  //helperText="Hello"
@@ -37,6 +70,7 @@ var InputPage = function () {
37
70
  // helperText="sometibg"
38
71
  isRequired: true, informationMessage: "This is information", isInformation: true,
39
72
  // isDisabled
40
- minW: "200px", maxW: "300px" })));
73
+ minW: "200px", maxW: "300px" }),
74
+ react_1.default.createElement(PhoneNumberInput_1.default, { label: "Phone", id: "input1", name: "hello", country: "IN", value: "", countries: countries, onChange: function (val) { console.log(val, "hello"); }, isRequired: true, informationMessage: "This is information", isInformation: true, error: true, errorMessage: "Required", showCountrySelect: true, minW: "200px", maxW: "300px" })));
41
75
  };
42
76
  exports.default = InputPage;
package/dist/index.d.ts CHANGED
@@ -52,5 +52,6 @@ import { ThemesList } from "./Theme";
52
52
  import { debounce } from "./Utils/table";
53
53
  import ProductCard from "./Components/ProductCard/ProductCard";
54
54
  import ProductDetails from "./Components/ProductDetails/ProductDetails";
55
- export { Accordian, AlertDialog, ApexBarChart, ApexPieChart, Breadcrumbs, Button, ButtonGroupIcon, Card, Checkbox, ContactForm, DatePicker, Drawer, DrawerHeader, DrawerBody, DrawerFooter, Dropdown, Editor, FileUpload, FormWrapper, Header, HeaderActions, InputTextArea, KanbanBoard, Loading, Modal, ModalHeader, ModalBody, ModalFooter, NavigationBar, NoteTextArea, MultiSelect, NumberInput, PinInput, ProductCard, ProductDetails, ProfileCard, ProfileCardHeader, ProfileCardBody, ProfileCardFooter, ProfilePhotoViewer, ProgressBar, RadioButton, RadioButtonGroup, Reorder, Search, Select, SearchSelect, SelectSearch, SideBar, Slider, Skeletons, Switch, Table, TableToggle, Tag, TextInput, Timeline, Toaster, ToolTip, useToaster, VerifyEmailOtp, useCustomTheme, ThemesList, debounce, };
55
+ import PhoneNumberInput from "./Components/Input/PhoneNumberInput";
56
+ export { Accordian, AlertDialog, ApexBarChart, ApexPieChart, Breadcrumbs, Button, ButtonGroupIcon, Card, Checkbox, ContactForm, DatePicker, Drawer, DrawerHeader, DrawerBody, DrawerFooter, Dropdown, Editor, FileUpload, FormWrapper, Header, HeaderActions, InputTextArea, KanbanBoard, Loading, Modal, ModalHeader, ModalBody, ModalFooter, NavigationBar, NoteTextArea, MultiSelect, NumberInput, PhoneNumberInput, PinInput, ProductCard, ProductDetails, ProfileCard, ProfileCardHeader, ProfileCardBody, ProfileCardFooter, ProfilePhotoViewer, ProgressBar, RadioButton, RadioButtonGroup, Reorder, Search, Select, SearchSelect, SelectSearch, SideBar, Slider, Skeletons, Switch, Table, TableToggle, Tag, TextInput, Timeline, Toaster, ToolTip, useToaster, VerifyEmailOtp, useCustomTheme, ThemesList, debounce, };
56
57
  export default withTheme;
package/dist/index.js CHANGED
@@ -27,8 +27,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  return (mod && mod.__esModule) ? mod : { "default": mod };
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.Slider = exports.SideBar = exports.SelectSearch = exports.SearchSelect = exports.Select = exports.Search = exports.Reorder = exports.RadioButtonGroup = exports.RadioButton = exports.ProgressBar = exports.ProfilePhotoViewer = exports.ProfileCardFooter = exports.ProfileCardBody = exports.ProfileCardHeader = exports.ProfileCard = exports.ProductDetails = exports.ProductCard = exports.PinInput = exports.NumberInput = exports.MultiSelect = exports.NoteTextArea = exports.NavigationBar = exports.ModalFooter = exports.ModalBody = exports.ModalHeader = exports.Modal = exports.Loading = exports.KanbanBoard = exports.InputTextArea = exports.HeaderActions = exports.Header = exports.FormWrapper = exports.FileUpload = exports.Editor = exports.Dropdown = exports.DrawerFooter = exports.DrawerBody = exports.DrawerHeader = exports.Drawer = exports.DatePicker = exports.ContactForm = exports.Checkbox = exports.Card = exports.ButtonGroupIcon = exports.Button = exports.Breadcrumbs = exports.ApexPieChart = exports.ApexBarChart = exports.AlertDialog = exports.Accordian = void 0;
31
- exports.debounce = exports.ThemesList = exports.useCustomTheme = exports.VerifyEmailOtp = exports.useToaster = exports.ToolTip = exports.Toaster = exports.Timeline = exports.TextInput = exports.Tag = exports.TableToggle = exports.Table = exports.Switch = exports.Skeletons = void 0;
30
+ exports.SideBar = exports.SelectSearch = exports.SearchSelect = exports.Select = exports.Search = exports.Reorder = exports.RadioButtonGroup = exports.RadioButton = exports.ProgressBar = exports.ProfilePhotoViewer = exports.ProfileCardFooter = exports.ProfileCardBody = exports.ProfileCardHeader = exports.ProfileCard = exports.ProductDetails = exports.ProductCard = exports.PinInput = exports.PhoneNumberInput = exports.NumberInput = exports.MultiSelect = exports.NoteTextArea = exports.NavigationBar = exports.ModalFooter = exports.ModalBody = exports.ModalHeader = exports.Modal = exports.Loading = exports.KanbanBoard = exports.InputTextArea = exports.HeaderActions = exports.Header = exports.FormWrapper = exports.FileUpload = exports.Editor = exports.Dropdown = exports.DrawerFooter = exports.DrawerBody = exports.DrawerHeader = exports.Drawer = exports.DatePicker = exports.ContactForm = exports.Checkbox = exports.Card = exports.ButtonGroupIcon = exports.Button = exports.Breadcrumbs = exports.ApexPieChart = exports.ApexBarChart = exports.AlertDialog = exports.Accordian = void 0;
31
+ exports.debounce = exports.ThemesList = exports.useCustomTheme = exports.VerifyEmailOtp = exports.useToaster = exports.ToolTip = exports.Toaster = exports.Timeline = exports.TextInput = exports.Tag = exports.TableToggle = exports.Table = exports.Switch = exports.Skeletons = exports.Slider = void 0;
32
32
  var Accordion_1 = __importDefault(require("./Components/Accordion/Accordion"));
33
33
  exports.Accordian = Accordion_1.default;
34
34
  var AlertDialog_1 = __importDefault(require("./Components/AlertDialog/AlertDialog"));
@@ -147,4 +147,6 @@ var ProductCard_1 = __importDefault(require("./Components/ProductCard/ProductCar
147
147
  exports.ProductCard = ProductCard_1.default;
148
148
  var ProductDetails_1 = __importDefault(require("./Components/ProductDetails/ProductDetails"));
149
149
  exports.ProductDetails = ProductDetails_1.default;
150
+ var PhoneNumberInput_1 = __importDefault(require("./Components/Input/PhoneNumberInput"));
151
+ exports.PhoneNumberInput = PhoneNumberInput_1.default;
150
152
  exports.default = withTheme_1.default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pixelize-design-library",
3
- "version": "2.1.41",
3
+ "version": "2.1.42",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",