@lukso/core 1.1.0-dev.5ea12c5 → 1.1.0-dev.c21633f
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/README.md +55 -0
- package/dist/chains/index.cjs +1 -0
- package/dist/chains/index.cjs.map +1 -1
- package/dist/chains/index.js +1 -0
- package/dist/chunk-CUDG6NPH.cjs +111 -0
- package/dist/chunk-CUDG6NPH.cjs.map +1 -0
- package/dist/chunk-DWXFDFMM.cjs +1 -0
- package/dist/chunk-DWXFDFMM.cjs.map +1 -0
- package/dist/chunk-EUXUH3YW.js +15 -0
- package/dist/chunk-GFLV5EJV.js +159 -0
- package/dist/chunk-GFLV5EJV.js.map +1 -0
- package/dist/chunk-JEE6C34P.js +1 -0
- package/dist/chunk-JEE6C34P.js.map +1 -0
- package/dist/chunk-LQIOVPBE.js +111 -0
- package/dist/chunk-LQIOVPBE.js.map +1 -0
- package/dist/chunk-QU6NUTY6.cjs +159 -0
- package/dist/chunk-QU6NUTY6.cjs.map +1 -0
- package/dist/chunk-ZBDE64SD.cjs +15 -0
- package/dist/chunk-ZBDE64SD.cjs.map +1 -0
- package/dist/config.cjs +1 -0
- package/dist/config.cjs.map +1 -1
- package/dist/config.js +1 -0
- package/dist/index.cjs +14 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +13 -4
- package/dist/mixins/device.cjs +1 -0
- package/dist/mixins/device.cjs.map +1 -1
- package/dist/mixins/device.js +1 -0
- package/dist/mixins/index.cjs +7 -2
- package/dist/mixins/index.cjs.map +1 -1
- package/dist/mixins/index.d.cts +1 -0
- package/dist/mixins/index.d.ts +1 -0
- package/dist/mixins/index.js +7 -2
- package/dist/mixins/intl.cjs +1 -0
- package/dist/mixins/intl.cjs.map +1 -1
- package/dist/mixins/intl.js +1 -0
- package/dist/mixins/theme.cjs +8 -0
- package/dist/mixins/theme.cjs.map +1 -0
- package/dist/mixins/theme.d.cts +45 -0
- package/dist/mixins/theme.d.ts +45 -0
- package/dist/mixins/theme.js +8 -0
- package/dist/mixins/theme.js.map +1 -0
- package/dist/services/device.cjs +1 -0
- package/dist/services/device.cjs.map +1 -1
- package/dist/services/device.js +1 -0
- package/dist/services/index.cjs +1 -0
- package/dist/services/index.cjs.map +1 -1
- package/dist/services/index.js +1 -0
- package/dist/services/intl.cjs +1 -0
- package/dist/services/intl.cjs.map +1 -1
- package/dist/services/intl.js +1 -0
- package/dist/utils/index.cjs +7 -2
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.cts +34 -1
- package/dist/utils/index.d.ts +34 -1
- package/dist/utils/index.js +6 -1
- package/package.json +7 -1
- package/src/mixins/__tests__/theme.spec.ts +478 -0
- package/src/mixins/index.ts +1 -0
- package/src/mixins/theme.ts +172 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/url-resolver.ts +93 -0
- package/dist/chunk-AMRGSLR5.cjs +0 -1
- package/dist/chunk-AMRGSLR5.cjs.map +0 -1
- package/dist/chunk-DKEXQFNE.js +0 -1
- package/dist/chunk-DKXHVRHM.js +0 -84
- package/dist/chunk-DKXHVRHM.js.map +0 -1
- package/dist/chunk-MBIRTPNM.cjs +0 -84
- package/dist/chunk-MBIRTPNM.cjs.map +0 -1
- /package/dist/{chunk-DKEXQFNE.js.map → chunk-EUXUH3YW.js.map} +0 -0
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/utils/browserInfo.ts
|
|
2
|
+
var EXTENSION_STORE_LINKS = {
|
|
3
|
+
chrome: "https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn",
|
|
4
|
+
brave: "https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn",
|
|
5
|
+
edge: "https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn",
|
|
6
|
+
opera: "",
|
|
7
|
+
safari: "",
|
|
8
|
+
firefox: ""
|
|
9
|
+
};
|
|
10
|
+
var browserInfo = (deviceService) => {
|
|
11
|
+
const browserInfoDefaults = {
|
|
12
|
+
id: "chrome",
|
|
13
|
+
name: "",
|
|
14
|
+
icon: ""
|
|
15
|
+
};
|
|
16
|
+
const detectBrowser = () => {
|
|
17
|
+
const { isChrome, isBrave, isFirefox, isSafari, isEdge, isOpera } = deviceService;
|
|
18
|
+
if (isBrave) {
|
|
19
|
+
return {
|
|
20
|
+
id: "brave",
|
|
21
|
+
name: "Brave",
|
|
22
|
+
icon: "logo-brave",
|
|
23
|
+
storeLink: EXTENSION_STORE_LINKS.brave
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (isEdge) {
|
|
27
|
+
return {
|
|
28
|
+
id: "edge",
|
|
29
|
+
name: "Edge",
|
|
30
|
+
icon: "logo-edge",
|
|
31
|
+
storeLink: EXTENSION_STORE_LINKS.edge
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
if (isOpera) {
|
|
35
|
+
return {
|
|
36
|
+
id: "opera",
|
|
37
|
+
name: "Opera",
|
|
38
|
+
icon: "logo-opera",
|
|
39
|
+
storeLink: EXTENSION_STORE_LINKS.opera
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
if (isChrome) {
|
|
43
|
+
return {
|
|
44
|
+
id: "chrome",
|
|
45
|
+
name: "Chrome",
|
|
46
|
+
icon: "logo-chrome",
|
|
47
|
+
storeLink: EXTENSION_STORE_LINKS.chrome
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
if (isFirefox) {
|
|
51
|
+
return {
|
|
52
|
+
id: "firefox",
|
|
53
|
+
name: "Firefox",
|
|
54
|
+
icon: "logo-firefox",
|
|
55
|
+
storeLink: EXTENSION_STORE_LINKS.firefox
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
if (isSafari) {
|
|
59
|
+
return {
|
|
60
|
+
id: "safari",
|
|
61
|
+
name: "Safari",
|
|
62
|
+
icon: "logo-safari",
|
|
63
|
+
storeLink: EXTENSION_STORE_LINKS.safari
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
const browserInfo2 = { ...browserInfoDefaults, ...detectBrowser() };
|
|
68
|
+
return browserInfo2;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
// src/utils/slug.ts
|
|
72
|
+
var slug = (value) => {
|
|
73
|
+
if (!value) {
|
|
74
|
+
return "";
|
|
75
|
+
}
|
|
76
|
+
return value.toLowerCase().replace(/\s+/g, "-");
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
// src/utils/url-resolver.ts
|
|
80
|
+
var UrlConverter = class {
|
|
81
|
+
/**
|
|
82
|
+
* It will relatively append pathname or hostname to the destination URL
|
|
83
|
+
*
|
|
84
|
+
* For example:
|
|
85
|
+
* destination=https://some.api.gateway/something/ipfs
|
|
86
|
+
* url=ipfs://QmSomeHash
|
|
87
|
+
* output=https://some.api.gateway/something/ipfs/QmSomeHash
|
|
88
|
+
*
|
|
89
|
+
* destination=https://some.api.gateway/something/ipfs
|
|
90
|
+
* url=https://something.com/somewhere
|
|
91
|
+
* output=https://some.api.gateway/something/ipfs/somewhere
|
|
92
|
+
*
|
|
93
|
+
* @param destination destination string | URL
|
|
94
|
+
*/
|
|
95
|
+
constructor(destination) {
|
|
96
|
+
this.destination = new URL(destination);
|
|
97
|
+
if (this.destination.pathname.at(-1) !== "/") {
|
|
98
|
+
this.destination.pathname += "/";
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
resolveUrl(url) {
|
|
102
|
+
const source = new URL(url);
|
|
103
|
+
const relativePath = source.pathname ? `./${source.hostname}${source.pathname}` : `./${source.hostname}`;
|
|
104
|
+
const out = new URL(relativePath, this.destination);
|
|
105
|
+
out.pathname = out.pathname.replaceAll(/\/\/+/g, "/");
|
|
106
|
+
return out.toString();
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
var UrlResolver = class {
|
|
110
|
+
constructor(converters) {
|
|
111
|
+
this.converters = [];
|
|
112
|
+
for (const item of converters) {
|
|
113
|
+
const [match, _converter] = item;
|
|
114
|
+
if (match == null) {
|
|
115
|
+
throw new TypeError("Match criteria not defined");
|
|
116
|
+
}
|
|
117
|
+
const converter = typeof _converter === "string" ? new UrlConverter(_converter) : _converter;
|
|
118
|
+
if (!(converter instanceof UrlConverter)) {
|
|
119
|
+
throw new TypeError("Invalid converter");
|
|
120
|
+
}
|
|
121
|
+
this.converters.push({ match, converter });
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Resolves a URL to a gateway URL.
|
|
126
|
+
* Supports possible multiple converters transforming the URL
|
|
127
|
+
* in sequence until no converter matches.
|
|
128
|
+
*
|
|
129
|
+
* @param {string} url to resolve
|
|
130
|
+
* @returns {string} resolved url (if resolver is found, otherwise the parameter url is returned)
|
|
131
|
+
*/
|
|
132
|
+
resolveUrl(url_) {
|
|
133
|
+
let url = url_;
|
|
134
|
+
const current = new Set(this.converters);
|
|
135
|
+
let found = true;
|
|
136
|
+
while (found) {
|
|
137
|
+
found = false;
|
|
138
|
+
for (const entry of current) {
|
|
139
|
+
const { match, converter } = entry;
|
|
140
|
+
if (match instanceof RegExp ? match.test(url) : url.startsWith(match)) {
|
|
141
|
+
url = converter.resolveUrl(url);
|
|
142
|
+
current.delete(entry);
|
|
143
|
+
found = true;
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return url;
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
exports.EXTENSION_STORE_LINKS = EXTENSION_STORE_LINKS; exports.browserInfo = browserInfo; exports.slug = slug; exports.UrlConverter = UrlConverter; exports.UrlResolver = UrlResolver;
|
|
159
|
+
//# sourceMappingURL=chunk-QU6NUTY6.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/chunk-QU6NUTY6.cjs","../src/utils/browserInfo.ts","../src/utils/slug.ts","../src/utils/url-resolver.ts"],"names":["browserInfo"],"mappings":"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","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/chunk-QU6NUTY6.cjs","sourcesContent":[null,"import type { DeviceService } from '../services'\n\nexport type BrowserName =\n | 'chrome'\n | 'safari'\n | 'firefox'\n | 'edge'\n | 'opera'\n | 'brave'\n\nexport type BrowserInfo = {\n id: BrowserName\n name: string\n icon: string\n storeLink: string\n}\n\n// extension store links (all webkit based browsers use chrome web store installation)\nexport const EXTENSION_STORE_LINKS = {\n chrome:\n 'https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn',\n brave:\n 'https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn',\n edge: 'https://chrome.google.com/webstore/detail/universal-profiles-testin/abpickdkkbnbcoepogfhkhennhfhehfn',\n opera: '',\n safari: '',\n firefox: '',\n}\n\n/**\n * Expose browser info to the app\n */\nexport const browserInfo = (deviceService: DeviceService): BrowserInfo => {\n const browserInfoDefaults = {\n id: 'chrome',\n name: '',\n icon: '',\n } as BrowserInfo\n\n const detectBrowser = (): BrowserInfo | undefined => {\n const { isChrome, isBrave, isFirefox, isSafari, isEdge, isOpera } =\n deviceService\n\n if (isBrave) {\n return {\n id: 'brave',\n name: 'Brave',\n icon: 'logo-brave',\n storeLink: EXTENSION_STORE_LINKS.brave,\n }\n }\n\n if (isEdge) {\n return {\n id: 'edge',\n name: 'Edge',\n icon: 'logo-edge',\n storeLink: EXTENSION_STORE_LINKS.edge,\n }\n }\n\n if (isOpera) {\n return {\n id: 'opera',\n name: 'Opera',\n icon: 'logo-opera',\n storeLink: EXTENSION_STORE_LINKS.opera,\n }\n }\n\n if (isChrome) {\n return {\n id: 'chrome',\n name: 'Chrome',\n icon: 'logo-chrome',\n storeLink: EXTENSION_STORE_LINKS.chrome,\n }\n }\n\n if (isFirefox) {\n return {\n id: 'firefox',\n name: 'Firefox',\n icon: 'logo-firefox',\n storeLink: EXTENSION_STORE_LINKS.firefox,\n }\n }\n\n if (isSafari) {\n return {\n id: 'safari',\n name: 'Safari',\n icon: 'logo-safari',\n storeLink: EXTENSION_STORE_LINKS.safari,\n }\n }\n }\n\n const browserInfo = { ...browserInfoDefaults, ...detectBrowser() }\n\n return browserInfo\n}\n","/**\n * Make slug from text\n *\n * @param value\n * @returns\n */\nexport const slug = (value?: string) => {\n if (!value) {\n return ''\n }\n\n return value.toLowerCase().replace(/\\s+/g, '-') // convert spaces to hyphens\n}\n","export class UrlConverter {\n private destination: URL\n /**\n * It will relatively append pathname or hostname to the destination URL\n *\n * For example:\n * destination=https://some.api.gateway/something/ipfs\n * url=ipfs://QmSomeHash\n * output=https://some.api.gateway/something/ipfs/QmSomeHash\n *\n * destination=https://some.api.gateway/something/ipfs\n * url=https://something.com/somewhere\n * output=https://some.api.gateway/something/ipfs/somewhere\n *\n * @param destination destination string | URL\n */\n constructor(destination: string | URL) {\n this.destination = new URL(destination)\n if (this.destination.pathname.at(-1) !== '/') {\n this.destination.pathname += '/'\n }\n }\n\n resolveUrl(url: string): string {\n // Parse and convert to javascript URL objects\n // this will manage / and relative paths for us.\n const source = new URL(url)\n // extract the relative path. For URLs with a pathname prepend \".\" to make it ./ (i.e. relative)\n // for anything that only has a hostname we prepend ./ to make it relative\n // the pathname is at least slash for https urls, but '' for ipfs for example\n const relativePath = source.pathname\n ? `./${source.hostname}${source.pathname}` // pathname always starts with at least a slash\n : `./${source.hostname}`\n // Construct relative URL on destination using the relative pathname.\n const out = new URL(relativePath, this.destination)\n out.pathname = out.pathname.replaceAll(/\\/\\/+/g, '/')\n return out.toString()\n }\n}\n\nexport class UrlResolver {\n private converters: Array<{\n match: string | RegExp\n converter: UrlConverter\n }> = []\n constructor(converters: Array<[string | RegExp, UrlConverter | string]>) {\n for (const item of converters) {\n const [match, _converter] = item\n if (match == null) {\n throw new TypeError('Match criteria not defined')\n }\n const converter =\n typeof _converter === 'string'\n ? new UrlConverter(_converter)\n : _converter\n if (!(converter instanceof UrlConverter)) {\n throw new TypeError('Invalid converter')\n }\n this.converters.push({ match, converter })\n }\n }\n\n /**\n * Resolves a URL to a gateway URL.\n * Supports possible multiple converters transforming the URL\n * in sequence until no converter matches.\n *\n * @param {string} url to resolve\n * @returns {string} resolved url (if resolver is found, otherwise the parameter url is returned)\n */\n resolveUrl(url_: string): string {\n let url = url_\n const current = new Set<{\n match: string | RegExp\n converter: UrlConverter\n }>(this.converters)\n let found = true\n while (found) {\n found = false\n for (const entry of current) {\n const { match, converter } = entry\n if (match instanceof RegExp ? match.test(url) : url.startsWith(match)) {\n url = converter.resolveUrl(url)\n // This converter matches, so don't use it again.\n current.delete(entry)\n found = true\n break\n }\n }\n }\n return url\n }\n}\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
4
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
5
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
6
|
+
if (decorator = decorators[i])
|
|
7
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
8
|
+
if (kind && result) __defProp(target, key, result);
|
|
9
|
+
return result;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
exports.__decorateClass = __decorateClass;
|
|
15
|
+
//# sourceMappingURL=chunk-ZBDE64SD.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/chunk-ZBDE64SD.cjs"],"names":[],"mappings":"AAAA,6EAAI,UAAU,EAAE,MAAM,CAAC,cAAc;AACrC,IAAI,iBAAiB,EAAE,MAAM,CAAC,wBAAwB;AACtD,IAAI,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;AACzD,EAAE,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,MAAM;AAChF,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE;AAC5D,IAAI,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AACjC,MAAM,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM;AACpF,EAAE,GAAG,CAAC,KAAK,GAAG,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC;AACpD,EAAE,OAAO,MAAM;AACf,CAAC;AACD;AACA;AACE;AACF,0CAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/chunk-ZBDE64SD.cjs"}
|
package/dist/config.cjs
CHANGED
package/dist/config.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/config.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACF,sOAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/config.cjs"}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/config.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACF,sOAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/config.cjs"}
|
package/dist/config.js
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-DFMMMF62.cjs');
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
var _chunkQU6NUTY6cjs = require('./chunk-QU6NUTY6.cjs');
|
|
6
9
|
|
|
7
10
|
|
|
8
11
|
|
|
@@ -14,14 +17,13 @@ var _chunkMCNNULYXcjs = require('./chunk-MCNNULYX.cjs');
|
|
|
14
17
|
|
|
15
18
|
|
|
16
19
|
var _chunkLUT5BHYLcjs = require('./chunk-LUT5BHYL.cjs');
|
|
17
|
-
require('./chunk-
|
|
20
|
+
require('./chunk-DWXFDFMM.cjs');
|
|
18
21
|
|
|
19
22
|
|
|
20
23
|
var _chunkCC3LFUYYcjs = require('./chunk-CC3LFUYY.cjs');
|
|
21
24
|
|
|
22
25
|
|
|
23
26
|
var _chunkFR74YPGJcjs = require('./chunk-FR74YPGJ.cjs');
|
|
24
|
-
require('./chunk-DFMMMF62.cjs');
|
|
25
27
|
|
|
26
28
|
|
|
27
29
|
|
|
@@ -31,7 +33,14 @@ require('./chunk-DFMMMF62.cjs');
|
|
|
31
33
|
var _chunkRM42NG7Ecjs = require('./chunk-RM42NG7E.cjs');
|
|
32
34
|
|
|
33
35
|
|
|
36
|
+
var _chunkCUDG6NPHcjs = require('./chunk-CUDG6NPH.cjs');
|
|
37
|
+
|
|
38
|
+
|
|
34
39
|
var _chunkNJQVWIZLcjs = require('./chunk-NJQVWIZL.cjs');
|
|
40
|
+
require('./chunk-ZBDE64SD.cjs');
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
35
44
|
|
|
36
45
|
|
|
37
46
|
|
|
@@ -51,5 +60,5 @@ var _chunkNJQVWIZLcjs = require('./chunk-NJQVWIZL.cjs');
|
|
|
51
60
|
|
|
52
61
|
|
|
53
62
|
|
|
54
|
-
exports.EXTENSION_STORE_LINKS =
|
|
63
|
+
exports.EXTENSION_STORE_LINKS = _chunkQU6NUTY6cjs.EXTENSION_STORE_LINKS; exports.GRAPHQL_ENDPOINT_MAINNET = _chunkLUT5BHYLcjs.GRAPHQL_ENDPOINT_MAINNET; exports.GRAPHQL_ENDPOINT_TESTNET = _chunkLUT5BHYLcjs.GRAPHQL_ENDPOINT_TESTNET; exports.LUKSO_CHAINS_BY_ID = _chunkMCNNULYXcjs.LUKSO_CHAINS_BY_ID; exports.SUPPORTED_NETWORK_IDS = _chunkLUT5BHYLcjs.SUPPORTED_NETWORK_IDS; exports.UrlConverter = _chunkQU6NUTY6cjs.UrlConverter; exports.UrlResolver = _chunkQU6NUTY6cjs.UrlResolver; exports.browserInfo = _chunkQU6NUTY6cjs.browserInfo; exports.clearIntlService = _chunkRM42NG7Ecjs.clearIntlService; exports.createIntlService = _chunkRM42NG7Ecjs.createIntlService; exports.defaultConfig = _chunkRM42NG7Ecjs.defaultConfig; exports.deviceService = _chunkNJQVWIZLcjs.deviceService; exports.getChainById = _chunkMCNNULYXcjs.getChainById; exports.getIntlService = _chunkRM42NG7Ecjs.getIntlService; exports.luksoMainnet = _chunkMCNNULYXcjs.luksoMainnet; exports.luksoTestnet = _chunkMCNNULYXcjs.luksoTestnet; exports.setIntlService = _chunkRM42NG7Ecjs.setIntlService; exports.slug = _chunkQU6NUTY6cjs.slug; exports.withDeviceService = _chunkCC3LFUYYcjs.withDeviceService; exports.withIntlService = _chunkFR74YPGJcjs.withIntlService; exports.withTheme = _chunkCUDG6NPHcjs.withTheme;
|
|
55
64
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/index.cjs"],"names":[],"mappings":"AAAA,yGAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,svCAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/index.cjs"}
|
package/dist/index.d.cts
CHANGED
|
@@ -2,9 +2,10 @@ export { Address, ChainExtended, LSPMintableInitAddresses, LUKSO_CHAINS_BY_ID, N
|
|
|
2
2
|
export { GRAPHQL_ENDPOINT_MAINNET, GRAPHQL_ENDPOINT_TESTNET, SUPPORTED_NETWORK_IDS } from './config.cjs';
|
|
3
3
|
export { withDeviceService } from './mixins/device.cjs';
|
|
4
4
|
export { withIntlService } from './mixins/intl.cjs';
|
|
5
|
+
export { Theme, withTheme } from './mixins/theme.cjs';
|
|
5
6
|
export { DeviceService, NavigatorExtended, deviceService } from './services/device.cjs';
|
|
6
7
|
export { IntlMessages, IntlService, clearIntlService, createIntlService, defaultConfig, getIntlService, setIntlService } from './services/intl.cjs';
|
|
7
|
-
export { BrowserInfo, BrowserName, EXTENSION_STORE_LINKS, browserInfo, slug } from './utils/index.cjs';
|
|
8
|
+
export { BrowserInfo, BrowserName, EXTENSION_STORE_LINKS, UrlConverter, UrlResolver, browserInfo, slug } from './utils/index.cjs';
|
|
8
9
|
import 'viem';
|
|
9
10
|
import 'lit';
|
|
10
11
|
import 'ua-parser-js';
|
package/dist/index.d.ts
CHANGED
|
@@ -2,9 +2,10 @@ export { Address, ChainExtended, LSPMintableInitAddresses, LUKSO_CHAINS_BY_ID, N
|
|
|
2
2
|
export { GRAPHQL_ENDPOINT_MAINNET, GRAPHQL_ENDPOINT_TESTNET, SUPPORTED_NETWORK_IDS } from './config.js';
|
|
3
3
|
export { withDeviceService } from './mixins/device.js';
|
|
4
4
|
export { withIntlService } from './mixins/intl.js';
|
|
5
|
+
export { Theme, withTheme } from './mixins/theme.js';
|
|
5
6
|
export { DeviceService, NavigatorExtended, deviceService } from './services/device.js';
|
|
6
7
|
export { IntlMessages, IntlService, clearIntlService, createIntlService, defaultConfig, getIntlService, setIntlService } from './services/intl.js';
|
|
7
|
-
export { BrowserInfo, BrowserName, EXTENSION_STORE_LINKS, browserInfo, slug } from './utils/index.js';
|
|
8
|
+
export { BrowserInfo, BrowserName, EXTENSION_STORE_LINKS, UrlConverter, UrlResolver, browserInfo, slug } from './utils/index.js';
|
|
8
9
|
import 'viem';
|
|
9
10
|
import 'lit';
|
|
10
11
|
import 'ua-parser-js';
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import "./chunk-LEL6VWU4.js";
|
|
1
2
|
import {
|
|
2
3
|
EXTENSION_STORE_LINKS,
|
|
4
|
+
UrlConverter,
|
|
5
|
+
UrlResolver,
|
|
3
6
|
browserInfo,
|
|
4
7
|
slug
|
|
5
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-GFLV5EJV.js";
|
|
6
9
|
import {
|
|
7
10
|
LUKSO_CHAINS_BY_ID,
|
|
8
11
|
getChainById,
|
|
@@ -14,14 +17,13 @@ import {
|
|
|
14
17
|
GRAPHQL_ENDPOINT_TESTNET,
|
|
15
18
|
SUPPORTED_NETWORK_IDS
|
|
16
19
|
} from "./chunk-XI3PNS5M.js";
|
|
17
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-JEE6C34P.js";
|
|
18
21
|
import {
|
|
19
22
|
withDeviceService
|
|
20
23
|
} from "./chunk-3WGYJTN4.js";
|
|
21
24
|
import {
|
|
22
25
|
withIntlService
|
|
23
26
|
} from "./chunk-SV4TVR2K.js";
|
|
24
|
-
import "./chunk-LEL6VWU4.js";
|
|
25
27
|
import {
|
|
26
28
|
clearIntlService,
|
|
27
29
|
createIntlService,
|
|
@@ -29,15 +31,21 @@ import {
|
|
|
29
31
|
getIntlService,
|
|
30
32
|
setIntlService
|
|
31
33
|
} from "./chunk-4TNWG4ME.js";
|
|
34
|
+
import {
|
|
35
|
+
withTheme
|
|
36
|
+
} from "./chunk-LQIOVPBE.js";
|
|
32
37
|
import {
|
|
33
38
|
deviceService
|
|
34
39
|
} from "./chunk-X2QNFZU7.js";
|
|
40
|
+
import "./chunk-EUXUH3YW.js";
|
|
35
41
|
export {
|
|
36
42
|
EXTENSION_STORE_LINKS,
|
|
37
43
|
GRAPHQL_ENDPOINT_MAINNET,
|
|
38
44
|
GRAPHQL_ENDPOINT_TESTNET,
|
|
39
45
|
LUKSO_CHAINS_BY_ID,
|
|
40
46
|
SUPPORTED_NETWORK_IDS,
|
|
47
|
+
UrlConverter,
|
|
48
|
+
UrlResolver,
|
|
41
49
|
browserInfo,
|
|
42
50
|
clearIntlService,
|
|
43
51
|
createIntlService,
|
|
@@ -50,6 +58,7 @@ export {
|
|
|
50
58
|
setIntlService,
|
|
51
59
|
slug,
|
|
52
60
|
withDeviceService,
|
|
53
|
-
withIntlService
|
|
61
|
+
withIntlService,
|
|
62
|
+
withTheme
|
|
54
63
|
};
|
|
55
64
|
//# sourceMappingURL=index.js.map
|
package/dist/mixins/device.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/device.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,gEAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/device.cjs"}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/device.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,gEAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/device.cjs"}
|
package/dist/mixins/device.js
CHANGED
package/dist/mixins/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-DWXFDFMM.cjs');
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
var _chunkCC3LFUYYcjs = require('../chunk-CC3LFUYY.cjs');
|
|
@@ -6,9 +6,14 @@ var _chunkCC3LFUYYcjs = require('../chunk-CC3LFUYY.cjs');
|
|
|
6
6
|
|
|
7
7
|
var _chunkFR74YPGJcjs = require('../chunk-FR74YPGJ.cjs');
|
|
8
8
|
require('../chunk-RM42NG7E.cjs');
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
var _chunkCUDG6NPHcjs = require('../chunk-CUDG6NPH.cjs');
|
|
9
12
|
require('../chunk-NJQVWIZL.cjs');
|
|
13
|
+
require('../chunk-ZBDE64SD.cjs');
|
|
14
|
+
|
|
10
15
|
|
|
11
16
|
|
|
12
17
|
|
|
13
|
-
exports.withDeviceService = _chunkCC3LFUYYcjs.withDeviceService; exports.withIntlService = _chunkFR74YPGJcjs.withIntlService;
|
|
18
|
+
exports.withDeviceService = _chunkCC3LFUYYcjs.withDeviceService; exports.withIntlService = _chunkFR74YPGJcjs.withIntlService; exports.withTheme = _chunkCUDG6NPHcjs.withTheme;
|
|
14
19
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACF,
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACA;AACF,8KAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/index.cjs"}
|
package/dist/mixins/index.d.cts
CHANGED
package/dist/mixins/index.d.ts
CHANGED
package/dist/mixins/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../chunk-
|
|
1
|
+
import "../chunk-JEE6C34P.js";
|
|
2
2
|
import {
|
|
3
3
|
withDeviceService
|
|
4
4
|
} from "../chunk-3WGYJTN4.js";
|
|
@@ -6,9 +6,14 @@ import {
|
|
|
6
6
|
withIntlService
|
|
7
7
|
} from "../chunk-SV4TVR2K.js";
|
|
8
8
|
import "../chunk-4TNWG4ME.js";
|
|
9
|
+
import {
|
|
10
|
+
withTheme
|
|
11
|
+
} from "../chunk-LQIOVPBE.js";
|
|
9
12
|
import "../chunk-X2QNFZU7.js";
|
|
13
|
+
import "../chunk-EUXUH3YW.js";
|
|
10
14
|
export {
|
|
11
15
|
withDeviceService,
|
|
12
|
-
withIntlService
|
|
16
|
+
withIntlService,
|
|
17
|
+
withTheme
|
|
13
18
|
};
|
|
14
19
|
//# sourceMappingURL=index.js.map
|
package/dist/mixins/intl.cjs
CHANGED
package/dist/mixins/intl.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/intl.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,4DAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/intl.cjs"}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/intl.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,4DAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/intl.cjs"}
|
package/dist/mixins/intl.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/theme.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,gDAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/mixins/theme.cjs"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Theme Mixin
|
|
5
|
+
*
|
|
6
|
+
* Mixin to add theme detection and management to a Lit component
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
type Theme = 'light' | 'dark' | 'auto';
|
|
10
|
+
/**
|
|
11
|
+
* Mixin to add theme management to a Lit component
|
|
12
|
+
*
|
|
13
|
+
* Provides a `theme` property and `isDark` state that automatically handles:
|
|
14
|
+
* - Manual theme selection ('light' or 'dark')
|
|
15
|
+
* - Auto theme detection based on system preferences
|
|
16
|
+
* - Reactive updates when system theme changes
|
|
17
|
+
* - Automatically wraps all rendered content in a themed div with 'dark' class when dark mode is active
|
|
18
|
+
*
|
|
19
|
+
* All content rendered by the component will be inside a theme-root div that receives the dark class.
|
|
20
|
+
* Components can use render() normally - no changes needed.
|
|
21
|
+
*
|
|
22
|
+
* @typeParam T - The Lit component class being extended
|
|
23
|
+
* @returns Extended class with theme management capabilities
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* import { LitElement, html } from 'lit';
|
|
28
|
+
* import { customElement } from 'lit/decorators.js';
|
|
29
|
+
* import { withTheme } from '@lukso/core/mixins';
|
|
30
|
+
*
|
|
31
|
+
* @customElement('my-component')
|
|
32
|
+
* export class MyComponent extends withTheme(LitElement) {
|
|
33
|
+
* render() {
|
|
34
|
+
* return html`
|
|
35
|
+
* <div class="text-neutral-20 dark:text-neutral-100">
|
|
36
|
+
* Current theme: ${this.theme}
|
|
37
|
+
* </div>
|
|
38
|
+
* `;
|
|
39
|
+
* }
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
declare function withTheme<T extends typeof LitElement>(Base: T): any;
|
|
44
|
+
|
|
45
|
+
export { type Theme, withTheme };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Theme Mixin
|
|
5
|
+
*
|
|
6
|
+
* Mixin to add theme detection and management to a Lit component
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
type Theme = 'light' | 'dark' | 'auto';
|
|
10
|
+
/**
|
|
11
|
+
* Mixin to add theme management to a Lit component
|
|
12
|
+
*
|
|
13
|
+
* Provides a `theme` property and `isDark` state that automatically handles:
|
|
14
|
+
* - Manual theme selection ('light' or 'dark')
|
|
15
|
+
* - Auto theme detection based on system preferences
|
|
16
|
+
* - Reactive updates when system theme changes
|
|
17
|
+
* - Automatically wraps all rendered content in a themed div with 'dark' class when dark mode is active
|
|
18
|
+
*
|
|
19
|
+
* All content rendered by the component will be inside a theme-root div that receives the dark class.
|
|
20
|
+
* Components can use render() normally - no changes needed.
|
|
21
|
+
*
|
|
22
|
+
* @typeParam T - The Lit component class being extended
|
|
23
|
+
* @returns Extended class with theme management capabilities
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* import { LitElement, html } from 'lit';
|
|
28
|
+
* import { customElement } from 'lit/decorators.js';
|
|
29
|
+
* import { withTheme } from '@lukso/core/mixins';
|
|
30
|
+
*
|
|
31
|
+
* @customElement('my-component')
|
|
32
|
+
* export class MyComponent extends withTheme(LitElement) {
|
|
33
|
+
* render() {
|
|
34
|
+
* return html`
|
|
35
|
+
* <div class="text-neutral-20 dark:text-neutral-100">
|
|
36
|
+
* Current theme: ${this.theme}
|
|
37
|
+
* </div>
|
|
38
|
+
* `;
|
|
39
|
+
* }
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
declare function withTheme<T extends typeof LitElement>(Base: T): any;
|
|
44
|
+
|
|
45
|
+
export { type Theme, withTheme };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/services/device.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/device.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B;AACE;AACF,wDAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/device.cjs"}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/device.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,wDAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/device.cjs"}
|
package/dist/services/device.js
CHANGED
package/dist/services/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACF,uWAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/index.cjs"}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACF,uWAAC","file":"/home/runner/work/service-auth-simple/service-auth-simple/packages/core/dist/services/index.cjs"}
|