@lukso/core 0.1.0-dev.0f1bea5

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 (95) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +159 -0
  3. package/dist/chunk-3WGYJTN4.js +19 -0
  4. package/dist/chunk-3WGYJTN4.js.map +1 -0
  5. package/dist/chunk-4TNWG4ME.js +106 -0
  6. package/dist/chunk-4TNWG4ME.js.map +1 -0
  7. package/dist/chunk-AMRGSLR5.cjs +1 -0
  8. package/dist/chunk-AMRGSLR5.cjs.map +1 -0
  9. package/dist/chunk-CC3LFUYY.cjs +19 -0
  10. package/dist/chunk-CC3LFUYY.cjs.map +1 -0
  11. package/dist/chunk-DFMMMF62.cjs +1 -0
  12. package/dist/chunk-DFMMMF62.cjs.map +1 -0
  13. package/dist/chunk-DKEXQFNE.js +1 -0
  14. package/dist/chunk-DKEXQFNE.js.map +1 -0
  15. package/dist/chunk-DKXHVRHM.js +84 -0
  16. package/dist/chunk-DKXHVRHM.js.map +1 -0
  17. package/dist/chunk-FR74YPGJ.cjs +87 -0
  18. package/dist/chunk-FR74YPGJ.cjs.map +1 -0
  19. package/dist/chunk-LEL6VWU4.js +1 -0
  20. package/dist/chunk-LEL6VWU4.js.map +1 -0
  21. package/dist/chunk-MBIRTPNM.cjs +84 -0
  22. package/dist/chunk-MBIRTPNM.cjs.map +1 -0
  23. package/dist/chunk-NJQVWIZL.cjs +49 -0
  24. package/dist/chunk-NJQVWIZL.cjs.map +1 -0
  25. package/dist/chunk-RM42NG7E.cjs +106 -0
  26. package/dist/chunk-RM42NG7E.cjs.map +1 -0
  27. package/dist/chunk-SV4TVR2K.js +87 -0
  28. package/dist/chunk-SV4TVR2K.js.map +1 -0
  29. package/dist/chunk-X2QNFZU7.js +49 -0
  30. package/dist/chunk-X2QNFZU7.js.map +1 -0
  31. package/dist/index.cjs +37 -0
  32. package/dist/index.cjs.map +1 -0
  33. package/dist/index.d.cts +8 -0
  34. package/dist/index.d.ts +8 -0
  35. package/dist/index.js +37 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/mixins/device.cjs +8 -0
  38. package/dist/mixins/device.cjs.map +1 -0
  39. package/dist/mixins/device.d.cts +34 -0
  40. package/dist/mixins/device.d.ts +34 -0
  41. package/dist/mixins/device.js +8 -0
  42. package/dist/mixins/device.js.map +1 -0
  43. package/dist/mixins/index.cjs +14 -0
  44. package/dist/mixins/index.cjs.map +1 -0
  45. package/dist/mixins/index.d.cts +3 -0
  46. package/dist/mixins/index.d.ts +3 -0
  47. package/dist/mixins/index.js +14 -0
  48. package/dist/mixins/index.js.map +1 -0
  49. package/dist/mixins/intl.cjs +8 -0
  50. package/dist/mixins/intl.cjs.map +1 -0
  51. package/dist/mixins/intl.d.cts +37 -0
  52. package/dist/mixins/intl.d.ts +37 -0
  53. package/dist/mixins/intl.js +8 -0
  54. package/dist/mixins/intl.js.map +1 -0
  55. package/dist/services/device.cjs +7 -0
  56. package/dist/services/device.cjs.map +1 -0
  57. package/dist/services/device.d.cts +71 -0
  58. package/dist/services/device.d.ts +71 -0
  59. package/dist/services/device.js +7 -0
  60. package/dist/services/device.js.map +1 -0
  61. package/dist/services/index.cjs +20 -0
  62. package/dist/services/index.cjs.map +1 -0
  63. package/dist/services/index.d.cts +4 -0
  64. package/dist/services/index.d.ts +4 -0
  65. package/dist/services/index.js +20 -0
  66. package/dist/services/index.js.map +1 -0
  67. package/dist/services/intl.cjs +15 -0
  68. package/dist/services/intl.cjs.map +1 -0
  69. package/dist/services/intl.d.cts +170 -0
  70. package/dist/services/intl.d.ts +170 -0
  71. package/dist/services/intl.js +15 -0
  72. package/dist/services/intl.js.map +1 -0
  73. package/dist/utils/index.cjs +11 -0
  74. package/dist/utils/index.cjs.map +1 -0
  75. package/dist/utils/index.d.cts +32 -0
  76. package/dist/utils/index.d.ts +32 -0
  77. package/dist/utils/index.js +11 -0
  78. package/dist/utils/index.js.map +1 -0
  79. package/package.json +114 -0
  80. package/src/index.ts +10 -0
  81. package/src/mixins/__tests__/device.spec.ts +119 -0
  82. package/src/mixins/__tests__/intl.spec.ts +198 -0
  83. package/src/mixins/device.ts +48 -0
  84. package/src/mixins/index.ts +8 -0
  85. package/src/mixins/intl.ts +112 -0
  86. package/src/services/__tests__/device.spec.ts +36 -0
  87. package/src/services/__tests__/intl.spec.ts +536 -0
  88. package/src/services/device.ts +121 -0
  89. package/src/services/index.ts +17 -0
  90. package/src/services/intl.ts +326 -0
  91. package/src/utils/__tests__/browserInfo.spec.ts +310 -0
  92. package/src/utils/__tests__/slug.spec.ts +26 -0
  93. package/src/utils/browserInfo.ts +102 -0
  94. package/src/utils/index.ts +4 -0
  95. package/src/utils/slug.ts +13 -0
@@ -0,0 +1,102 @@
1
+ import type { DeviceService } from '../services'
2
+
3
+ export type BrowserName =
4
+ | 'chrome'
5
+ | 'safari'
6
+ | 'firefox'
7
+ | 'edge'
8
+ | 'opera'
9
+ | 'brave'
10
+
11
+ export type BrowserInfo = {
12
+ id: BrowserName
13
+ name: string
14
+ icon: string
15
+ storeLink: string
16
+ }
17
+
18
+ // extension store links (all webkit based browsers use chrome web store installation)
19
+ export const EXTENSION_STORE_LINKS = {
20
+ chrome:
21
+ 'https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn',
22
+ brave:
23
+ 'https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn',
24
+ edge: 'https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn',
25
+ opera: '',
26
+ safari: '',
27
+ firefox: '',
28
+ }
29
+
30
+ /**
31
+ * Expose browser info to the app
32
+ */
33
+ export const browserInfo = (deviceService: DeviceService): BrowserInfo => {
34
+ const browserInfoDefaults = {
35
+ id: 'chrome',
36
+ name: '',
37
+ icon: '',
38
+ } as BrowserInfo
39
+
40
+ const detectBrowser = (): BrowserInfo | undefined => {
41
+ const { isChrome, isBrave, isFirefox, isSafari, isEdge, isOpera } =
42
+ deviceService
43
+
44
+ if (isBrave) {
45
+ return {
46
+ id: 'brave',
47
+ name: 'Brave',
48
+ icon: 'logo-brave',
49
+ storeLink: EXTENSION_STORE_LINKS.brave,
50
+ }
51
+ }
52
+
53
+ if (isEdge) {
54
+ return {
55
+ id: 'edge',
56
+ name: 'Edge',
57
+ icon: 'logo-edge',
58
+ storeLink: EXTENSION_STORE_LINKS.edge,
59
+ }
60
+ }
61
+
62
+ if (isOpera) {
63
+ return {
64
+ id: 'opera',
65
+ name: 'Opera',
66
+ icon: 'logo-opera',
67
+ storeLink: EXTENSION_STORE_LINKS.opera,
68
+ }
69
+ }
70
+
71
+ if (isChrome) {
72
+ return {
73
+ id: 'chrome',
74
+ name: 'Chrome',
75
+ icon: 'logo-chrome',
76
+ storeLink: EXTENSION_STORE_LINKS.chrome,
77
+ }
78
+ }
79
+
80
+ if (isFirefox) {
81
+ return {
82
+ id: 'firefox',
83
+ name: 'Firefox',
84
+ icon: 'logo-firefox',
85
+ storeLink: EXTENSION_STORE_LINKS.firefox,
86
+ }
87
+ }
88
+
89
+ if (isSafari) {
90
+ return {
91
+ id: 'safari',
92
+ name: 'Safari',
93
+ icon: 'logo-safari',
94
+ storeLink: EXTENSION_STORE_LINKS.safari,
95
+ }
96
+ }
97
+ }
98
+
99
+ const browserInfo = { ...browserInfoDefaults, ...detectBrowser() }
100
+
101
+ return browserInfo
102
+ }
@@ -0,0 +1,4 @@
1
+ export type { BrowserInfo, BrowserName } from './browserInfo.js'
2
+ export { browserInfo, EXTENSION_STORE_LINKS } from './browserInfo.js'
3
+
4
+ export { slug } from './slug.js'
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Make slug from text
3
+ *
4
+ * @param value
5
+ * @returns
6
+ */
7
+ export const slug = (value?: string) => {
8
+ if (!value) {
9
+ return ''
10
+ }
11
+
12
+ return value.toLowerCase().replace(/\s+/g, '-') // convert spaces to hyphens
13
+ }