coer-elements 2.0.17 → 2.0.18

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 (34) hide show
  1. package/extensions/lib/string.extension.d.ts +12 -10
  2. package/fesm2022/coer-elements-components.mjs +9 -9
  3. package/fesm2022/coer-elements-components.mjs.map +1 -1
  4. package/fesm2022/coer-elements-extensions.mjs +16 -21
  5. package/fesm2022/coer-elements-extensions.mjs.map +1 -1
  6. package/fesm2022/coer-elements-guards.mjs +7 -7
  7. package/fesm2022/coer-elements-guards.mjs.map +1 -1
  8. package/fesm2022/coer-elements-pages.mjs +2 -2
  9. package/fesm2022/coer-elements-pages.mjs.map +1 -1
  10. package/fesm2022/coer-elements-tools.mjs +75 -50
  11. package/fesm2022/coer-elements-tools.mjs.map +1 -1
  12. package/interfaces/lib/option.interface.d.ts +1 -0
  13. package/package.json +5 -5
  14. package/styles/coer-elements.css +790 -485
  15. package/styles/index.scss +2 -1
  16. package/styles/{layout.scss → layout-flex.scss} +39 -7
  17. package/styles/layout-grid.scss +14 -0
  18. package/styles/space.scss +15 -15
  19. package/tools/lib/string.tools.d.ts +16 -0
  20. package/tools/lib/tools.d.ts +0 -10
  21. package/tools/public-api.d.ts +14 -13
  22. /package/tools/lib/{breadcrumbs.class.d.ts → breadcrumbs.tools.d.ts} +0 -0
  23. /package/tools/lib/{colors.class.d.ts → colors.tools.d.ts} +0 -0
  24. /package/tools/lib/{control-value.class.d.ts → control-value.tools.d.ts} +0 -0
  25. /package/tools/lib/{date-time.class.d.ts → date-time.tools.d.ts} +0 -0
  26. /package/tools/lib/{elements-html.class.d.ts → elements-html.tools.d.ts} +0 -0
  27. /package/tools/lib/{files.class.d.ts → files.tools.d.ts} +0 -0
  28. /package/tools/lib/{filters.class.d.ts → filters.tools.d.ts} +0 -0
  29. /package/tools/lib/{menu.class.d.ts → menu.tools.d.ts} +0 -0
  30. /package/tools/lib/{page.class.d.ts → page.tools.d.ts} +0 -0
  31. /package/tools/lib/{screen.class.d.ts → screen.tools.d.ts} +0 -0
  32. /package/tools/lib/{section.class.d.ts → section.tools.d.ts} +0 -0
  33. /package/tools/lib/{service.class.d.ts → service.tools.d.ts} +0 -0
  34. /package/tools/lib/{source.class.d.ts → source.tools.d.ts} +0 -0
@@ -81,12 +81,6 @@ const Tools = {
81
81
  default: return '';
82
82
  }
83
83
  },
84
- /** */
85
- RemoveAccents: (value) => {
86
- if (Tools.IsOnlyWhiteSpace(value))
87
- return '';
88
- return value.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
89
- },
90
84
  /** Break reference of a object or array */
91
85
  BreakReference: (object) => {
92
86
  if (object === null)
@@ -102,14 +96,6 @@ const Tools = {
102
96
  const OBJECT = JSON.parse(JSON.stringify(object));
103
97
  return (Array.isArray(OBJECT) ? [...OBJECT] : { ...OBJECT });
104
98
  },
105
- /** Clean extra whitespaces */
106
- CleanUpBlanks: (text) => {
107
- if (Tools.IsOnlyWhiteSpace(text))
108
- return '';
109
- let words = String(text).split(' ');
110
- words = words.filter(x => x.length > 0);
111
- return words.join(' ');
112
- },
113
99
  /** Get properties of an object */
114
100
  GetPropertyList: (object) => {
115
101
  const properties = [];
@@ -137,32 +123,6 @@ const Tools = {
137
123
  }
138
124
  return Tools.BreakReference(array).map(item => Object.assign({ index: index++ }, item));
139
125
  },
140
- /** Set First Char To Lower */
141
- FirstCharToLower: (text) => {
142
- if (Tools.IsOnlyWhiteSpace(text))
143
- return '';
144
- const textArray = [];
145
- for (let i = 0; i < text.length; i++) {
146
- if (i === 0)
147
- textArray.push(text[i].toLowerCase());
148
- else
149
- textArray.push(text[i]);
150
- }
151
- return textArray.join('');
152
- },
153
- /** Set First Char To Upper */
154
- FirstCharToUpper: (text) => {
155
- if (Tools.IsOnlyWhiteSpace(text))
156
- return '';
157
- const textArray = [];
158
- for (let i = 0; i < text.length; i++) {
159
- if (i === 0)
160
- textArray.push(text[i].toUpperCase());
161
- else
162
- textArray.push(text[i]);
163
- }
164
- return textArray.join('');
165
- },
166
126
  /** Sort an array in ascending order by property */
167
127
  SortBy: (array, property, propertyType = 'string') => {
168
128
  switch (propertyType) {
@@ -291,12 +251,6 @@ const Tools = {
291
251
  new CoerAlert().Warning('Unable to copy to clipboard', 'Quick Implement', 'bi bi-clipboard-fill');
292
252
  }
293
253
  },
294
- /** */
295
- RemoveLastChar: (text) => {
296
- return Tools.IsNotOnlyWhiteSpace(text)
297
- ? text.trimEnd().substring(0, text.length - 1).trimEnd()
298
- : '';
299
- }
300
254
  };
301
255
 
302
256
  class Colors {
@@ -874,6 +828,77 @@ const ElementsHTML = {
874
828
  }
875
829
  };
876
830
 
831
+ class StringTools {
832
+ /** Sets the first character to lowercase */
833
+ static FirstCharToLower(value) {
834
+ if (Tools.IsOnlyWhiteSpace(value))
835
+ return '';
836
+ const array = [];
837
+ for (let i = 0; i < String(value).length; i++) {
838
+ if (i === 0)
839
+ array.push(String(value)[i].toLowerCase());
840
+ else
841
+ array.push(String(value)[i]);
842
+ }
843
+ return array.join('');
844
+ }
845
+ /** Sets the first character to uppercase */
846
+ static FirstCharToUpper(value) {
847
+ if (Tools.IsOnlyWhiteSpace(value))
848
+ return '';
849
+ const array = [];
850
+ for (let i = 0; i < String(value).length; i++) {
851
+ if (i === 0)
852
+ array.push(String(value)[i].toUpperCase());
853
+ else
854
+ array.push(String(value)[i]);
855
+ }
856
+ return array.join('');
857
+ }
858
+ /** Clean extra whitespaces */
859
+ static CleanUpBlanks(value) {
860
+ return (Tools.IsNotOnlyWhiteSpace(value))
861
+ ? String(value).split(' ').filter(x => x.length > 0).join(' ')
862
+ : '';
863
+ }
864
+ /** Apply title formatting */
865
+ static ToTitle(value) {
866
+ return (Tools.IsNotOnlyWhiteSpace(value))
867
+ ? String(value).split(' ').filter(x => x.length > 0).map(x => StringTools.FirstCharToUpper(x.toLowerCase())).join(' ')
868
+ : '';
869
+ }
870
+ /** Removes the last character */
871
+ static RemoveLastChar(value) {
872
+ return Tools.IsNotOnlyWhiteSpace(value)
873
+ ? String(value).trimEnd().substring(0, String(value).length - 1).trimEnd()
874
+ : '';
875
+ }
876
+ /** Removes accents and special characters */
877
+ static RemoveAccents(value, onlyAlphaNumeric = true) {
878
+ return (Tools.IsNotOnlyWhiteSpace(value))
879
+ ? String(value).normalize('NFD')
880
+ .replace(/[\u0300-\u036f]/g, '')
881
+ .replace((onlyAlphaNumeric ? /[^a-zA-Z0-9\s]/g : ''), '')
882
+ : '';
883
+ }
884
+ /** Validates if both strings are equal */
885
+ static Equals(value, value2, sensitive = false) {
886
+ if (typeof value === null && typeof value2 === null)
887
+ return true;
888
+ if (typeof value === 'undefined' && typeof value2 === 'undefined')
889
+ return true;
890
+ if (typeof value === 'string' && typeof value2 === 'string') {
891
+ if (!sensitive) {
892
+ value = value.toUpperCase();
893
+ value2 = value2.toUpperCase();
894
+ }
895
+ return value.length === value2.length
896
+ && value === value2;
897
+ }
898
+ return false;
899
+ }
900
+ }
901
+
877
902
  class Files {
878
903
  static { this.EXCEL_EXTENSIONS = ['xls', 'xlsx', 'csv']; }
879
904
  /** Get Extension File */
@@ -914,7 +939,7 @@ class Files {
914
939
  });
915
940
  //Get Headers
916
941
  for (const column in dataSheet[0]) {
917
- columns.push(Tools.FirstCharToLower(String(dataSheet[0][column]).replaceAll(' ', '')));
942
+ columns.push(StringTools.FirstCharToLower(String(dataSheet[0][column]).replaceAll(' ', '')));
918
943
  }
919
944
  //Get Rows
920
945
  rows = XLSX.utils.sheet_to_json(sheet, { header: columns });
@@ -932,8 +957,8 @@ class Files {
932
957
  }
933
958
  /** Export to excel file */
934
959
  static ExportExcel(data, fileName = 'coer_report', sheetName = 'Sheet1') {
935
- sheetName = Tools.CleanUpBlanks(sheetName);
936
- fileName = Tools.CleanUpBlanks(fileName);
960
+ sheetName = StringTools.CleanUpBlanks(sheetName);
961
+ fileName = StringTools.CleanUpBlanks(fileName);
937
962
  if (fileName.endsWith('.xls') || fileName.endsWith('.xlsx') || fileName.endsWith('.csv')) {
938
963
  if (fileName.endsWith('.xls')) {
939
964
  fileName = fileName.replaceAll('.xls', '.xlsx');
@@ -2093,5 +2118,5 @@ class Service {
2093
2118
  * Generated bundle index. Do not edit.
2094
2119
  */
2095
2120
 
2096
- export { Breadcrumbs, CONTROL_VALUE, CoerAlert, Colors, ControlValue, DateTime, ElementsHTML, Files, Filters, GridTemplates, Menu, Page, Screen, Section, Service, Source, Tools, User };
2121
+ export { Breadcrumbs, CONTROL_VALUE, CoerAlert, Colors, ControlValue, DateTime, ElementsHTML, Files, Filters, GridTemplates, Menu, Page, Screen, Section, Service, Source, StringTools, Tools, User };
2097
2122
  //# sourceMappingURL=coer-elements-tools.mjs.map