@pepperi-addons/ngx-lib 0.4.2-beta.9 → 0.4.2-beta.91

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 (196) hide show
  1. package/attachment/attachment.component.d.ts +11 -2
  2. package/button/button.component.d.ts +8 -8
  3. package/core/common/services/color.service.d.ts +1 -0
  4. package/core/common/services/file.service.d.ts +7 -2
  5. package/dialog/dialog.service.d.ts +1 -0
  6. package/draggable-items/draggable-items.component.d.ts +3 -3
  7. package/draggable-items/draggable-items.module.d.ts +1 -1
  8. package/esm2020/address/address.component.mjs +1 -1
  9. package/esm2020/attachment/attachment.component.mjs +38 -18
  10. package/esm2020/button/button.component.mjs +7 -7
  11. package/esm2020/chips/chips.component.mjs +2 -2
  12. package/esm2020/color/color-picker.component.mjs +1 -1
  13. package/esm2020/core/common/services/color.service.mjs +27 -1
  14. package/esm2020/core/common/services/file.service.mjs +57 -20
  15. package/esm2020/core/common/services/session.service.mjs +2 -1
  16. package/esm2020/core/customization/customization.model.mjs +7 -6
  17. package/esm2020/core/customization/customization.service.mjs +13 -4
  18. package/esm2020/core/http/services/http.service.mjs +1 -1
  19. package/esm2020/dialog/dialog.component.mjs +3 -3
  20. package/esm2020/dialog/dialog.service.mjs +22 -1
  21. package/esm2020/draggable-items/draggable-items.component.mjs +7 -7
  22. package/esm2020/draggable-items/draggable-items.module.mjs +6 -6
  23. package/esm2020/files-uploader/files-uploader.component.mjs +50 -45
  24. package/esm2020/form/field-generator.component.mjs +3 -3
  25. package/esm2020/form/form.component.mjs +4 -3
  26. package/esm2020/form/internal-field-generator.component.mjs +1 -1
  27. package/esm2020/form/internal-form.component.mjs +1 -1
  28. package/esm2020/form/internal-list.component.mjs +2 -2
  29. package/esm2020/image/image.component.mjs +32 -16
  30. package/esm2020/image/image.service.mjs +2 -4
  31. package/esm2020/images-filmstrip/images-filmstrip.component.mjs +2 -2
  32. package/esm2020/link/link.component.mjs +33 -58
  33. package/esm2020/list/list.component.mjs +109 -18
  34. package/esm2020/list/list.model.mjs +1 -1
  35. package/esm2020/menu/menu.component.mjs +3 -3
  36. package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +1 -1
  37. package/esm2020/quantity-selector/quantity-selector.component.mjs +20 -25
  38. package/esm2020/query-builder/common/model/operator.mjs +2 -2
  39. package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +1 -1
  40. package/esm2020/select/select.component.mjs +66 -40
  41. package/esm2020/select-panel/select-panel.component.mjs +2 -2
  42. package/esm2020/signature/public-api.mjs +2 -1
  43. package/esm2020/signature/signature-dialog.component.mjs +78 -0
  44. package/esm2020/signature/signature.component.mjs +117 -89
  45. package/esm2020/signature/signature.module.mjs +6 -5
  46. package/esm2020/skeleton-loader/pepperi-addons-ngx-lib-skeleton-loader.mjs +5 -0
  47. package/esm2020/skeleton-loader/public-api.mjs +6 -0
  48. package/esm2020/skeleton-loader/skeleton-loader.component.mjs +44 -0
  49. package/esm2020/skeleton-loader/skeleton-loader.module.mjs +24 -0
  50. package/esm2020/smart-filters/boolean-filter/boolean-filter.component.mjs +3 -3
  51. package/esm2020/smart-filters/date-filter/date-filter.component.mjs +1 -1
  52. package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +1 -1
  53. package/esm2020/smart-filters/number-filter/number-filter.component.mjs +3 -3
  54. package/esm2020/smart-filters/text-filter/text-filter.component.mjs +1 -1
  55. package/esm2020/textbox/textbox.component.mjs +9 -3
  56. package/esm2020/top-bar/top-bar.component.mjs +2 -2
  57. package/fesm2015/pepperi-addons-ngx-lib-address.mjs +1 -1
  58. package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +1 -1
  59. package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +37 -17
  60. package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
  61. package/fesm2015/pepperi-addons-ngx-lib-button.mjs +6 -6
  62. package/fesm2015/pepperi-addons-ngx-lib-button.mjs.map +1 -1
  63. package/fesm2015/pepperi-addons-ngx-lib-chips.mjs +2 -2
  64. package/fesm2015/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
  65. package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -1
  66. package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs +23 -2
  67. package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
  68. package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs +11 -11
  69. package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
  70. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs +49 -44
  71. package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -1
  72. package/fesm2015/pepperi-addons-ngx-lib-form.mjs +8 -7
  73. package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -1
  74. package/fesm2015/pepperi-addons-ngx-lib-image.mjs +32 -18
  75. package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -1
  76. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +1 -1
  77. package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
  78. package/fesm2015/pepperi-addons-ngx-lib-link.mjs +32 -57
  79. package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -1
  80. package/fesm2015/pepperi-addons-ngx-lib-list.mjs +108 -18
  81. package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +1 -1
  82. package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +2 -2
  83. package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
  84. package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +1 -1
  85. package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
  86. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +19 -24
  87. package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
  88. package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +2 -2
  89. package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
  90. package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs +2 -2
  91. package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
  92. package/fesm2015/pepperi-addons-ngx-lib-select.mjs +64 -38
  93. package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -1
  94. package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +205 -102
  95. package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
  96. package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs +78 -0
  97. package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -0
  98. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +7 -7
  99. package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
  100. package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +8 -2
  101. package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
  102. package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs +2 -2
  103. package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
  104. package/fesm2015/pepperi-addons-ngx-lib.mjs +101 -27
  105. package/fesm2015/pepperi-addons-ngx-lib.mjs.map +1 -1
  106. package/fesm2020/pepperi-addons-ngx-lib-address.mjs +1 -1
  107. package/fesm2020/pepperi-addons-ngx-lib-address.mjs.map +1 -1
  108. package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs +37 -17
  109. package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
  110. package/fesm2020/pepperi-addons-ngx-lib-button.mjs +6 -6
  111. package/fesm2020/pepperi-addons-ngx-lib-button.mjs.map +1 -1
  112. package/fesm2020/pepperi-addons-ngx-lib-chips.mjs +2 -2
  113. package/fesm2020/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
  114. package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -1
  115. package/fesm2020/pepperi-addons-ngx-lib-dialog.mjs +23 -2
  116. package/fesm2020/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
  117. package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs +11 -11
  118. package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
  119. package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs +49 -44
  120. package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -1
  121. package/fesm2020/pepperi-addons-ngx-lib-form.mjs +8 -7
  122. package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -1
  123. package/fesm2020/pepperi-addons-ngx-lib-image.mjs +32 -18
  124. package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -1
  125. package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +1 -1
  126. package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
  127. package/fesm2020/pepperi-addons-ngx-lib-link.mjs +32 -57
  128. package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -1
  129. package/fesm2020/pepperi-addons-ngx-lib-list.mjs +108 -17
  130. package/fesm2020/pepperi-addons-ngx-lib-list.mjs.map +1 -1
  131. package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +2 -2
  132. package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
  133. package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs +1 -1
  134. package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
  135. package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +19 -24
  136. package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
  137. package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +2 -2
  138. package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
  139. package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs +2 -2
  140. package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
  141. package/fesm2020/pepperi-addons-ngx-lib-select.mjs +64 -38
  142. package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -1
  143. package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +201 -102
  144. package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
  145. package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs +76 -0
  146. package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -0
  147. package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs +7 -7
  148. package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
  149. package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +8 -2
  150. package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
  151. package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs +2 -2
  152. package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
  153. package/fesm2020/pepperi-addons-ngx-lib.mjs +101 -27
  154. package/fesm2020/pepperi-addons-ngx-lib.mjs.map +1 -1
  155. package/files-uploader/files-uploader.component.d.ts +7 -4
  156. package/image/image.component.d.ts +11 -3
  157. package/link/link.component.d.ts +23 -27
  158. package/list/list.component.d.ts +10 -2
  159. package/list/list.model.d.ts +3 -1
  160. package/menu/menu.component.d.ts +1 -1
  161. package/package.json +10 -2
  162. package/quantity-selector/quantity-selector.component.d.ts +0 -2
  163. package/select/select.component.d.ts +10 -2
  164. package/signature/public-api.d.ts +1 -0
  165. package/signature/signature-dialog.component.d.ts +29 -0
  166. package/signature/signature.component.d.ts +7 -16
  167. package/signature/signature.module.d.ts +16 -15
  168. package/skeleton-loader/index.d.ts +5 -0
  169. package/skeleton-loader/public-api.d.ts +2 -0
  170. package/skeleton-loader/skeleton-loader.component.d.ts +20 -0
  171. package/skeleton-loader/skeleton-loader.component.theme.scss +15 -0
  172. package/skeleton-loader/skeleton-loader.module.d.ts +9 -0
  173. package/src/core/style/abstracts/AbstractsIntro.stories.mdx +7 -0
  174. package/src/core/style/abstracts/functions.scss +11 -11
  175. package/src/core/style/abstracts/mixins.scss +9 -6
  176. package/src/core/style/abstracts/variables.scss +38 -18
  177. package/src/core/style/base/BorderRadius.stories.mdx +59 -0
  178. package/src/core/style/base/Breakpoints.stories.mdx +36 -0
  179. package/src/core/style/base/Colors.stories.mdx +128 -0
  180. package/src/core/style/base/Shadows.stories.mdx +69 -0
  181. package/src/core/style/base/Spacing.stories.mdx +75 -0
  182. package/src/core/style/base/States.stories.mdx +62 -0
  183. package/src/core/style/base/Typography.stories.mdx +89 -0
  184. package/src/core/style/base/ZIndex.stories.mdx +47 -0
  185. package/src/core/style/base/base.scss +8 -10
  186. package/src/core/style/base/borderRadius.component.ts +27 -0
  187. package/src/core/style/base/breakpoints.component.ts +14 -0
  188. package/src/core/style/base/colors.component.ts +174 -0
  189. package/src/core/style/base/shadows.component.ts +90 -0
  190. package/src/core/style/base/spacing.component.ts +71 -0
  191. package/src/core/style/base/states.component.ts +84 -0
  192. package/src/core/style/base/typography.component.ts +94 -0
  193. package/src/core/style/base/typography.scss +52 -50
  194. package/src/core/style/base/zIndex.component.ts +25 -0
  195. package/src/core/style/components/file.scss +4 -4
  196. package/src/core/style/components/general.scss +5 -1
@@ -1454,6 +1454,7 @@ class PepSessionService {
1454
1454
  this.jwtHelper = jwtHelper;
1455
1455
  this.IDP_TOKEN_KEY = 'idp_token';
1456
1456
  this.PAPI_BASE_URL_KEY = 'pepperi.baseurl';
1457
+ // private readonly API_BASE_URL_KEY = 'pepperi.publicapibaseurl';
1457
1458
  // private readonly WAPI_TOKEN_KEY = 'auth_token';
1458
1459
  this.WAPI_BASE_URL_KEY = 'serverHostURL'; // pepperi.webapibaseurl
1459
1460
  }
@@ -1665,13 +1666,9 @@ class PepFileService {
1665
1666
  : filePath.lastIndexOf('.');
1666
1667
  return filePath.substr(filePath.lastIndexOf('/') + 1, lastIndex);
1667
1668
  }
1668
- getFileExtension(filePath) {
1669
- const fileSplit = filePath.split('.');
1670
- let fileExt = '';
1671
- if (fileSplit.length > 1) {
1672
- fileExt = fileSplit[fileSplit.length - 2];
1673
- }
1674
- return fileExt;
1669
+ getFileExtension(filename) {
1670
+ const extension = filename.substring(filename.lastIndexOf('.') + 1, filename.length);
1671
+ return extension;
1675
1672
  }
1676
1673
  /* Returns true if url is valid */
1677
1674
  isValidUrl(url) {
@@ -1684,21 +1681,62 @@ class PepFileService {
1684
1681
  return false;
1685
1682
  }
1686
1683
  }
1687
- convertFromb64toBlob(b64Data, contentType = '', sliceSize = 512) {
1688
- const byteCharacters = atob(b64Data);
1689
- const byteArrays = [];
1690
- for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
1691
- const slice = byteCharacters.slice(offset, offset + sliceSize);
1692
- const byteNumbers = new Array(slice.length);
1693
- for (let i = 0; i < slice.length; i++) {
1694
- byteNumbers[i] = slice.charCodeAt(i);
1695
- }
1696
- const byteArray = new Uint8Array(byteNumbers);
1697
- byteArrays.push(byteArray);
1684
+ convertFromb64toArrayBuffer(base64String) {
1685
+ const base64 = base64String.slice(base64String.indexOf(',') + 1);
1686
+ const binary_string = window.atob(base64);
1687
+ const len = binary_string.length;
1688
+ const bytes = new Uint8Array(len);
1689
+ for (let i = 0; i < len; i++) {
1690
+ bytes[i] = binary_string.charCodeAt(i);
1698
1691
  }
1699
- const blob = new Blob(byteArrays, { type: contentType });
1692
+ return bytes.buffer;
1693
+ }
1694
+ convertFromb64toBlob(base64String) {
1695
+ // const byteCharacters = window.atob(b64Data);
1696
+ const byteArrays = this.convertFromb64toArrayBuffer(base64String);
1697
+ const fileStrArr = base64String.split(';');
1698
+ const contentType = fileStrArr[0].split(':')[1];
1699
+ const blob = new Blob([byteArrays], { type: contentType });
1700
1700
  return blob;
1701
1701
  }
1702
+ getBase64FileSize(base64String) {
1703
+ let fileSize;
1704
+ try {
1705
+ base64String = base64String.slice(base64String.indexOf(',') + 1);
1706
+ fileSize = window.atob(base64String).length;
1707
+ }
1708
+ catch (e) {
1709
+ fileSize = -1;
1710
+ }
1711
+ return fileSize; // return size in bytes;
1712
+ }
1713
+ fileToBase64(file) {
1714
+ return new Promise((resolve, reject) => {
1715
+ const reader = new FileReader();
1716
+ reader.readAsDataURL(file);
1717
+ reader.onload = () => resolve(reader.result);
1718
+ reader.onerror = (error) => reject(error);
1719
+ });
1720
+ }
1721
+ isValidFileExtension(fileExtension, acceptedExtensions) {
1722
+ const extensionOK = acceptedExtensions === '' ||
1723
+ acceptedExtensions.indexOf(fileExtension.toLowerCase()) !== -1;
1724
+ return extensionOK;
1725
+ }
1726
+ isValidFileSize(fileStr, sizeLimitMB = 5) {
1727
+ const file = fileStr;
1728
+ let fileSize = 0;
1729
+ // check if got file as Base64
1730
+ if (typeof fileStr === 'string' && fileStr.indexOf('data:') > -1) {
1731
+ fileSize = this.getBase64FileSize(fileStr);
1732
+ }
1733
+ else {
1734
+ fileSize = file.size;
1735
+ }
1736
+ // check the size
1737
+ const sizeOK = fileSize !== -1 && file != null && fileSize < sizeLimitMB * 1048576;
1738
+ return sizeOK;
1739
+ }
1702
1740
  getAssetsPath(assetsDomain = '', libName = 'ngx-lib') {
1703
1741
  const concatChar = assetsDomain === '' || assetsDomain.endsWith('/') ? '' : '/';
1704
1742
  return `${assetsDomain}${concatChar}assets/${libName}/`;
@@ -2042,11 +2080,11 @@ class PepCustomizationService {
2042
2080
  }
2043
2081
  getUserSecondaryColorsVariables(themeVars) {
2044
2082
  themeVars[PepCustomizationService.COLOR_USER_SECONDARY_KEY + '-h'] =
2045
- '77';
2083
+ '36';
2046
2084
  themeVars[PepCustomizationService.COLOR_USER_SECONDARY_KEY + '-s'] =
2047
- '87%';
2085
+ '100%';
2048
2086
  themeVars[PepCustomizationService.COLOR_USER_SECONDARY_KEY + '-l'] =
2049
- '42%';
2087
+ '50%';
2050
2088
  }
2051
2089
  getWeakColorsVariables(themeVars) {
2052
2090
  themeVars[PepCustomizationService.COLOR_WEAK_KEY + '-h'] =
@@ -2159,6 +2197,10 @@ class PepCustomizationService {
2159
2197
  themeVars[PepCustomizationService.COLOR_TOP_HEADER_KEY + '-s'] = '';
2160
2198
  themeVars[PepCustomizationService.COLOR_TOP_HEADER_KEY + '-l'] = '';
2161
2199
  }
2200
+ // getDefaultThemeBrandingCustomizationVariables(themeVars: any): void {
2201
+ // themeVars[PepCustomizationService.BRANDING_LOGO_SRC] = '/assets/images/Pepperi-Logo-HiRes.png';
2202
+ // themeVars[PepCustomizationService.FAV_ICON_SRC] = '/assets/favicon.ico';
2203
+ // }
2162
2204
  getDefaultThemeVariables() {
2163
2205
  const themeVars = {};
2164
2206
  // Declare default layout.
@@ -2185,6 +2227,8 @@ class PepCustomizationService {
2185
2227
  this.getDefaultThemeQSCustomizationVariables(themeVars);
2186
2228
  // Declare default top header customization.
2187
2229
  this.getDefaultThemeTopHeaderCustomizationVariables(themeVars);
2230
+ // // Declare default branding logo's customization
2231
+ // this.getDefaultThemeBrandingCustomizationVariables(themeVars);
2188
2232
  return themeVars;
2189
2233
  }
2190
2234
  getThemeVariables() {
@@ -2481,6 +2525,9 @@ PepCustomizationService.CARD_BORDER_RADIUS_KEY = '--pep-card-border-radius';
2481
2525
  PepCustomizationService.TABLE_FIELD_HEIGHT_KEY = '--pep-table-field-height';
2482
2526
  PepCustomizationService.TABLE_SPACEING_KEY = '--pep-table-spacing';
2483
2527
  PepCustomizationService.TABLE_BORDER_RADIUS_KEY = '--pep-table-border-radius';
2528
+ // // Branding keys
2529
+ // static BRANDING_LOGO_SRC = '--pep-branding-logo-src';
2530
+ // static FAV_ICON_SRC = '--pep-favicon-src';
2484
2531
  PepCustomizationService.DEFAULT_HEADER_HEIGHT = 64; // Default
2485
2532
  PepCustomizationService.DEFAULT_SPINNER_COLOR = '#78aa00';
2486
2533
  PepCustomizationService.DEFAULT_BRANDING_COLOR = '#fff';
@@ -3780,6 +3827,32 @@ class PepColorService {
3780
3827
  hsl.l +
3781
3828
  '%)');
3782
3829
  }
3830
+ lightOrDark(color) {
3831
+ let r = undefined;
3832
+ let g = undefined;
3833
+ let b = undefined;
3834
+ // Check the format of the color, HEX or RGB?
3835
+ if (color.match(/^rgb/)) {
3836
+ // If HEX --> store the red, green, blue values in separate variables
3837
+ color = color.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+(?:\.\d+)?))?\)$/);
3838
+ r = color[1];
3839
+ g = color[2];
3840
+ b = color[3];
3841
+ }
3842
+ else {
3843
+ // If RGB --> Convert it to HEX: http://gist.github.com/983661
3844
+ color = +("0x" + color.slice(1).replace(color.length < 5 && /./g, '$&$&'));
3845
+ r = color >> 16;
3846
+ g = color >> 8 & 255;
3847
+ b = color & 255;
3848
+ }
3849
+ // HSP (Highly Sensitive Poo) equation from http://alienryderflex.com/hsp.html
3850
+ const hsp = Math.sqrt(0.299 * (r * r) +
3851
+ 0.587 * (g * g) +
3852
+ 0.114 * (b * b));
3853
+ // Using the HSP value, determine whether the color is light or dark
3854
+ return (hsp > 127.5) ? 'light' : 'dark';
3855
+ }
3783
3856
  }
3784
3857
  PepColorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepColorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3785
3858
  PepColorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepColorService, providedIn: 'root' });
@@ -4372,11 +4445,12 @@ class PepLinkField extends PepFieldBase {
4372
4445
  }
4373
4446
  update(options) {
4374
4447
  super.update(options);
4375
- // DI-11292 - add changes for link field for the "Read Only display value" prop
4376
- this.formattedValue =
4377
- this.disabled && this.formattedValue && this.value
4378
- ? this.formattedValue
4379
- : this.value;
4448
+ // DI-23167 - Comment this.
4449
+ // // DI-11292 - add changes for link field for the "Read Only display value" prop
4450
+ // this.formattedValue =
4451
+ // this.disabled && this.formattedValue && this.value
4452
+ // ? this.formattedValue
4453
+ // : this.value;
4380
4454
  }
4381
4455
  }
4382
4456
  class PepTextareaField extends PepFieldBase {