sccoreui 3.5.4 → 3.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/App.scss CHANGED
@@ -304,4 +304,97 @@ h3 {
304
304
  align-items: center;
305
305
  display: flex;
306
306
  }
307
- }
307
+ }
308
+
309
+ .status_dropdown_item:before {
310
+ content: '';
311
+ width: 10px;
312
+ height: 10px;
313
+ position: absolute;
314
+ transform: translateY(-50%);
315
+ top: 50%;
316
+ left: 0px;
317
+ border-radius: 50px;
318
+ }
319
+
320
+ .status_dropdown_item.Active::before {
321
+ background: #12B76A;
322
+ }
323
+
324
+ .status_dropdown_item.Inactive::before {
325
+ background: #F04438;
326
+ }
327
+
328
+ .status_dropdown_item.Draft::before {
329
+ background: #162578;
330
+ }
331
+
332
+ .custom_date_picker {
333
+ // padding-left: 134px;
334
+ }
335
+
336
+ .date_filter {
337
+ margin: 0;
338
+ position: absolute;
339
+ top: 0;
340
+ left: 0px;
341
+ background: #fff;
342
+ height: 100%;
343
+ padding: 4px 16px;
344
+ li {
345
+ height: 40px;
346
+ &:hover{
347
+ background: #F9FAFB;
348
+ }
349
+ }
350
+
351
+ .active {
352
+ background: #F9FAFB;
353
+ }
354
+
355
+
356
+ }
357
+
358
+ div:has(ul.date_filter) .p-datepicker-group-container {
359
+ padding-left: 116px;
360
+ margin: -8px;
361
+ }
362
+
363
+ .bottom_date_filters {
364
+ width: calc(100% - 116px);
365
+ border-left: 1px solid #dee2e6;
366
+ }
367
+
368
+ div:has(ul.date_filter) .p-datepicker-group-container .p-datepicker table td>span {
369
+ width: 40px;
370
+ height: 40px;
371
+ }
372
+
373
+ // .date_item {
374
+ // height: 40px;
375
+ // }
376
+
377
+ div:has(ul.date_filter) .p-datepicker-group-container .p-datepicker-group {
378
+ width: 328px;
379
+ max-width: 328px;
380
+ padding: 8px 20px !important;
381
+ border: 1px solid #dee2e6;
382
+ border-top: 0;
383
+ }
384
+
385
+ div:has(ul.date_filter) .p-datepicker-group-container div:nth-child(2){
386
+ border-right: 0;
387
+ }
388
+
389
+ div:has(ul.date_filter) .p-datepicker-group-container table td {
390
+ padding: 0;
391
+
392
+ }
393
+
394
+ div:has(ul.date_filter) .p-datepicker-footer {
395
+ margin: -8px;
396
+ }
397
+
398
+ // div:has(ul.date_filter) .p-datepicker-group-container {
399
+ // padding: 0;
400
+ // }
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DatePicker = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const calendar_1 = require("primereact/calendar");
7
+ const react_1 = require("react");
8
+ const button_1 = require("primereact/button");
9
+ const svg_component_1 = tslib_1.__importDefault(require("../../directives/svg-component"));
10
+ const DatePicker = (props) => {
11
+ const today = new Date();
12
+ const options = { year: 'numeric', month: 'short', day: 'numeric' };
13
+ const oneWeekFromToday = new Date(today);
14
+ oneWeekFromToday.setDate(today.getDate() + 7);
15
+ const formattedDate = today.toLocaleDateString('en-US', options);
16
+ const [fromDate, setFromDate] = (0, react_1.useState)(today);
17
+ const [fromDateFormate, setFromDateFormate] = (0, react_1.useState)(formattedDate);
18
+ const [toDateFormate, setToDateFormate] = (0, react_1.useState)('-');
19
+ const [propsState, setPropsState] = (0, react_1.useState)({});
20
+ let dateFromTo = {
21
+ 0: null,
22
+ 1: null,
23
+ };
24
+ const selecteDateOption = (dateType) => {
25
+ dateFromTo[0] = today;
26
+ switch (dateType) {
27
+ case 'Today':
28
+ // Default date
29
+ break;
30
+ case 'Yesterday':
31
+ const yesterdayFromToday = new Date(today);
32
+ yesterdayFromToday.setDate(today.getDate() - 1);
33
+ dateFromTo[0] = yesterdayFromToday;
34
+ dateFromTo[1] = today;
35
+ break;
36
+ case 'This week': {
37
+ const oneWeekFromToday = new Date(today);
38
+ oneWeekFromToday.setDate(today.getDate() + 7);
39
+ dateFromTo[1] = oneWeekFromToday;
40
+ break;
41
+ }
42
+ case 'Last week': {
43
+ const lastWeekFromToday = new Date(today);
44
+ lastWeekFromToday.setDate(today.getDate() - 7);
45
+ dateFromTo[0] = lastWeekFromToday;
46
+ dateFromTo[1] = today;
47
+ break;
48
+ }
49
+ case 'This month':
50
+ const oneMonthFromToday = new Date(today);
51
+ oneMonthFromToday.setDate(today.getDate() + 30);
52
+ dateFromTo[1] = oneMonthFromToday;
53
+ break;
54
+ case 'Last month':
55
+ const lastOneMonthFromToday = new Date(today);
56
+ lastOneMonthFromToday.setDate(today.getDate() - 30);
57
+ dateFromTo[0] = lastOneMonthFromToday;
58
+ dateFromTo[1] = today;
59
+ break;
60
+ case 'This year':
61
+ const oneYearFromToday = new Date(today);
62
+ oneYearFromToday.setFullYear(today.getFullYear() + 1);
63
+ dateFromTo[1] = oneYearFromToday;
64
+ break;
65
+ case 'Last year':
66
+ const lastOneYearFromToday = new Date(today);
67
+ lastOneYearFromToday.setFullYear(today.getFullYear() - 1);
68
+ dateFromTo[0] = lastOneYearFromToday;
69
+ dateFromTo[1] = today;
70
+ break;
71
+ case 'Custom':
72
+ // Default date
73
+ break;
74
+ }
75
+ setFromDate(dateFromTo);
76
+ const formatFromDate = dateFromTo[0].toLocaleDateString('en-US', options);
77
+ setFromDateFormate(formatFromDate);
78
+ if (dateFromTo[1]) {
79
+ const formatToDate = dateFromTo[1].toLocaleDateString('en-US', options);
80
+ setToDateFormate(formatToDate);
81
+ }
82
+ else {
83
+ setToDateFormate('-');
84
+ }
85
+ if (props.onChange)
86
+ props.onChange(dateFromTo);
87
+ };
88
+ const template = () => {
89
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "flex justify-content-end" }, { children: [(0, jsx_runtime_1.jsxs)("ul", Object.assign({ className: "list-none date_filter" }, { children: [(0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('Today') }, { children: "Today" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('Yesterday') }, { children: "Yesterday" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('This week') }, { children: "This week" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('Last week') }, { children: "Last week" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('This month') }, { children: "This month" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('Last month') }, { children: "Last month" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('This year') }, { children: "This year" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('Last year') }, { children: "Last year" })), (0, jsx_runtime_1.jsx)("li", Object.assign({ className: "border-round-xs p-2 flex align-items-center text-gray-700 cursor-pointer ", onClick: () => selecteDateOption('Custom') }, { children: "Custom" }))] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "bottom_date_filters pt-4 px-6 pb-2 flex align-items-center justify-content-between" }, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { label: "Today", className: "bg-white text-gray-900 border-1 border-gray-300", onClick: () => selecteDateOption('Today') }), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "flex align-items-center" }, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { label: `${fromDateFormate}`, className: "text-left bg-white text-gray-900 border-1 border-gray-300 mr-2 w-7rem" }), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "text-gray-900 text-xl" }, { children: "-" })), (0, jsx_runtime_1.jsx)(button_1.Button, { label: `${toDateFormate}`, className: "text-left bg-white text-gray-900 border-1 border-gray-300 ml-2 w-7rem" })] }))] }))] })) }));
90
+ };
91
+ const onChangeDate = (e) => {
92
+ setFromDate(e.value);
93
+ const frmD = e.value[0].toLocaleDateString('en-US', options);
94
+ setFromDateFormate(frmD);
95
+ if (e.value[1]) {
96
+ const toD = e.value[1].toLocaleDateString('en-US', options);
97
+ setToDateFormate(toD);
98
+ }
99
+ else {
100
+ setToDateFormate('-');
101
+ }
102
+ if (props.onChange)
103
+ props.onChange(e);
104
+ };
105
+ (0, react_1.useEffect)(() => {
106
+ const datePickerProps = {};
107
+ for (let key in props) {
108
+ switch (key) {
109
+ case 'iconPos':
110
+ datePickerProps['iconPos'] = props.iconPos;
111
+ datePickerProps['icon'] = (0, jsx_runtime_1.jsx)(svg_component_1.default, { icon: props.icon });
112
+ break;
113
+ case 'numberOfMonths':
114
+ datePickerProps['numberOfMonths'] = props.numberOfMonths;
115
+ break;
116
+ case 'dateFormat':
117
+ datePickerProps['dateFormat'] = props.dateFormat;
118
+ break;
119
+ case 'selectionMode':
120
+ datePickerProps['selectionMode'] = props.selectionMode;
121
+ break;
122
+ case 'placeholder':
123
+ datePickerProps['placeholder'] = props.placeholder;
124
+ break;
125
+ }
126
+ }
127
+ setPropsState(datePickerProps);
128
+ }, []);
129
+ return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex justify-content-center w-full my-2" }, { children: (0, jsx_runtime_1.jsx)(calendar_1.Calendar, Object.assign({ showIcon: true, value: fromDate, onChange: (e) => onChangeDate(e), footerTemplate: template, className: "custom_date_picker" }, propsState)) })));
130
+ };
131
+ exports.DatePicker = DatePicker;
132
+ exports.default = exports.DatePicker;
@@ -13,7 +13,7 @@ const MultiSelectDropDown = (props) => {
13
13
  return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (props.dropdownType !== undefined && props.dropdownType === "status") ?
14
14
  (0, jsx_runtime_1.jsx)("div", Object.assign({ className: 'select_status_prv absolute left_section_item z-5' }, { children: items.length > 0 ?
15
15
  (0, jsx_runtime_1.jsx)("ul", Object.assign({ className: 'p-0 m-0 list-none' }, { children: items.map((status, i) => {
16
- return (0, jsx_runtime_1.jsx)("li", { className: status.lable }, i);
16
+ return (0, jsx_runtime_1.jsx)("li", { className: `${status.lable}` }, i);
17
17
  }) }))
18
18
  :
19
19
  (0, jsx_runtime_1.jsx)("ul", Object.assign({ className: 'p-0 m-0 list-none' }, { children: (0, jsx_runtime_1.jsx)("li", { className: 'all' }) })) }))
@@ -35,7 +35,7 @@ const MultiSelectDropDown = (props) => {
35
35
  setIsMoreThenOne(false);
36
36
  }, [items]);
37
37
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [props.dropdownType !== '' &&
38
- (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: `sc_custom_multiselect flex align-items-center relative ${(props.dropdownType !== undefined && props.dropdownType === "status") ? 'status_dropdown' : ''} ${isMoreThanOne ? `selected_multile ${`selected_num_` + items.length}` : ''}` }, { children: [(0, jsx_runtime_1.jsx)(LeftSection, {}), (0, jsx_runtime_1.jsx)(multiselect_1.MultiSelect, { value: items, onChange: (e) => onChange(e), options: props.options, optionLabel: "name", filter: true, placeholder: props.placeholder, display: "chip", maxSelectedLabels: props.maxSelectedLabels, className: `w-full md:w-20rem` }), items.length > 0 &&
38
+ (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: `sc_custom_multiselect flex align-items-center relative ${(props.dropdownType !== undefined && props.dropdownType === "status") ? 'status_dropdown' : ''} ${isMoreThanOne ? `selected_multile ${`selected_num_` + items.length}` : ''}` }, { children: [(0, jsx_runtime_1.jsx)(LeftSection, {}), (0, jsx_runtime_1.jsx)(multiselect_1.MultiSelect, { value: items, onChange: (e) => onChange(e), options: props.options, optionLabel: "name", itemTemplate: props.dropdownType === 'status' ? (option) => { return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: `status_dropdown_item pl-3 ${option.name}` }, { children: option.name })) })); } : '', filter: true, placeholder: props.placeholder, display: "chip", maxSelectedLabels: props.maxSelectedLabels, className: `w-full md:w-20rem` }), items.length > 0 &&
39
39
  (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "flex align-items-center" }, { children: [isMoreThanOne && (0, jsx_runtime_1.jsxs)("span", Object.assign({ className: "selected_moreThan_one absolute z-5" }, { children: [" +", items.length - props.maxSelectedLabels] })), props.clear &&
40
40
  clearIcon()] }))] })), props.dropdownType === '' &&
41
41
  (0, jsx_runtime_1.jsx)(multiselect_1.MultiSelect, { value: items, onChange: (e) => onChange(e), options: props.options, optionLabel: "name", filter: true, placeholder: props.placeholder, display: "chip", maxSelectedLabels: props.maxSelectedLabels, className: `w-full md:w-20rem` })] }));
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Chart = exports.ProgressSpinner = exports.Skeleton = exports.Chip = exports.Chips = exports.Rating = exports.InputTextarea = exports.InputSwitch = exports.InputMask = exports.SpeedDial = exports.SplitButton = exports.DataViewLayoutOptions = exports.DataView = exports.Toast = exports.InputNumber = exports.OverlayPanel = exports.Tag = exports.Carousel = exports.ToggleButton = exports.CustomSlider = exports.Card = exports.Dialog = exports.Password = exports.confirmPopup = exports.ConfirmDialog = exports.RadioButton = exports.Badge = exports.Tooltip = exports.Calendar = exports.Image = exports.AvatarGroup = exports.Avatar = exports.classNames = exports.Paginator = exports.MultiSelect = exports.FileUpload = exports.TabMenu = exports.TabPanel = exports.TabView = exports.Sidebar = exports.Column = exports.DataTable = exports.Checkbox = exports.AutoComplete = exports.ColorPicker = exports.AccordionTab = exports.Accordion = exports.InputText = exports.Dropdown = exports.Button = void 0;
4
4
  exports.Terminal = exports.StyleClass = exports.ScrollTop = exports.InplaceContent = exports.InplaceDisplay = exports.Inplace = exports.BlockUI = exports.Messages = exports.Message = exports.TieredMenu = exports.Stesp = exports.SlideMenu = exports.Menubar = exports.Menu = exports.Dock = exports.ContextMenu = exports.Toolbar = exports.SplitterPanel = exports.Splitter = exports.ScrollPanel = exports.Panel = exports.Fieldset = exports.DeferredContent = exports.Timeline = exports.TreeTable = exports.Tree = exports.PickList = exports.OrganizationChart = exports.OrderList = exports.DataScroller = exports.TriStateCheckbox = exports.TreeSelect = exports.SelectButton = exports.MultiStateCheckbox = exports.Mention = exports.ListBox = exports.Knob = exports.Editor = exports.CascadeSelect = exports.FilterOperator = exports.FilterMatchMode = exports.Slider = exports.Galleria = exports.SvgComponent = exports.CircleProgressComponent = exports.ProgressSteps = exports.ProgressBar = exports.Divider = exports.MegaMenu = exports.BreadCrumb = void 0;
5
- exports.MultiSelectDropDown = void 0;
5
+ exports.DatePicker = exports.MultiSelectDropDown = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  const jsx_runtime_1 = require("react/jsx-runtime");
8
8
  const client_1 = tslib_1.__importDefault(require("react-dom/client"));
@@ -205,4 +205,6 @@ var terminal_1 = require("./components/terminal/terminal");
205
205
  Object.defineProperty(exports, "Terminal", { enumerable: true, get: function () { return tslib_1.__importDefault(terminal_1).default; } });
206
206
  var multi_select_dropdown_1 = require("./components/multi-select-dropdown/multi-select-dropdown");
207
207
  Object.defineProperty(exports, "MultiSelectDropDown", { enumerable: true, get: function () { return tslib_1.__importDefault(multi_select_dropdown_1).default; } });
208
+ var date_picker_1 = require("./components/date-picker/date-picker");
209
+ Object.defineProperty(exports, "DatePicker", { enumerable: true, get: function () { return tslib_1.__importDefault(date_picker_1).default; } });
208
210
  client_1.default.createRoot(document.getElementById("root")).render((0, jsx_runtime_1.jsx)(App_1.default, {}));
@@ -0,0 +1,2 @@
1
+ export declare const DatePicker: (props: any) => import("react/jsx-runtime").JSX.Element;
2
+ export default DatePicker;
@@ -92,6 +92,7 @@ export { default as ScrollTop } from "./components/scroll-top/scrollTop";
92
92
  export { default as StyleClass } from "./components/style-class/styleClass";
93
93
  export { default as Terminal } from "./components/terminal/terminal";
94
94
  export { default as MultiSelectDropDown } from './components/multi-select-dropdown/multi-select-dropdown';
95
+ export { default as DatePicker } from "./components/date-picker/date-picker";
95
96
  import { DropdownChangeEvent } from "primereact/dropdown";
96
97
  import { ColorPickerChangeEvent } from "primereact/colorpicker";
97
98
  import { SliderChangeEvent } from "primereact/slider";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sccoreui",
3
- "version": "3.5.4",
3
+ "version": "3.5.5",
4
4
  "description": "ui-sccore",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",