@epigraph/epigraph-std-lib 2.5.1 → 2.5.2-alpha
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 +49 -12
- package/dist/Epigraph/constants/enums.d.ts +5 -0
- package/dist/Epigraph/epigraph.d.ts +80 -0
- package/dist/Epigraph/interfaces/IReturnTypes.d.ts +7 -0
- package/dist/EpigraphLibs/EpigraphBaseSolution/epigraphBaseSolution.d.ts +16 -0
- package/dist/EpigraphLibs/EpigraphNexusApi/epigraphNexusApi.d.ts +82 -0
- package/dist/EpigraphLibs/EpigraphQrCodeGenerator/epigraphQrCodeGenerator.d.ts +33 -0
- package/dist/EpigraphLibs/EpigraphResultFactory/epigraphResultFactory.d.ts +13 -0
- package/dist/EpigraphLibs/EpigraphUnitsConverter/{EpigraphUnitsConverter.d.ts → epigraphUnitsConverter.d.ts} +2 -2
- package/dist/EpigraphLibs/EpigraphUnitsConverter/{Interfaces.d.ts → interfaces.d.ts} +1 -1
- package/dist/EpigraphLibs/EpigraphUrlProcessor/epigraphUrlProcessor.d.ts +54 -0
- package/dist/EpigraphLibs/epigraphLibs.d.ts +9 -0
- package/dist/ThirdPartyLibs/thirdPartyLibs.d.ts +5 -0
- package/dist/epigraph-std-lib.d.ts +3 -0
- package/dist/epigraph-std-lib.js +17984 -14829
- package/package.json +36 -43
- package/LICENSE +0 -21
- package/dist/index.d.ts +0 -22
- /package/dist/EpigraphLibs/EpigraphLogger/{epigraph-logger.d.ts → epigraphLogger.d.ts} +0 -0
- /package/dist/EpigraphLibs/EpigraphUnitsConverter/{Conversions.d.ts → conversions.d.ts} +0 -0
- /package/dist/EpigraphLibs/EpigraphUnitsConverter/{Enums.d.ts → enums.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -1,12 +1,49 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
Standard
|
|
4
|
-
|
|
5
|
-
###
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
|
11
|
-
|
|
12
|
-
|
|
|
1
|
+
# INTRODUCTION
|
|
2
|
+
|
|
3
|
+
Epigraph Standard Library or epigraph-std-lib is a collection of standards that we follow across our solutions. The idea is to have a single source of truth across solutions while ensuring that the dependencies are always up to date with the industry standards.
|
|
4
|
+
|
|
5
|
+
### EPIGRAPH
|
|
6
|
+
A global object that must only be initialized once per session and provides some common functionalities across solutions in that session.
|
|
7
|
+
|
|
8
|
+
### EPIGRAPH LIBRARY EXPORTS
|
|
9
|
+
|
|
10
|
+
| Name | Description |
|
|
11
|
+
|---|---|
|
|
12
|
+
| EpigraphBaseSolution | A base class intended to enforce some common functionalities across our solutions |
|
|
13
|
+
| EpigraphLogger | A logger class that provides a convenient way for logging info, warning or errors in any given session |
|
|
14
|
+
| EpigraphQrCoreGenerator | A Utility class that allows the generation of a QR code from a give string input |
|
|
15
|
+
| EpigraphUnitsConverter | A Utility class that allows conversion between different standard unit, including but not limited to Distance, Color, etc. |
|
|
16
|
+
| EpigraphUrlProcessor | A Utility class that provides various methods to generate, process, manipulate URLs |
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### 3rd PARTY LIBRARY EXPORTS
|
|
20
|
+
|
|
21
|
+
| Name | Version |
|
|
22
|
+
|---|---|
|
|
23
|
+
| [three](https://threejs.org/) |  |
|
|
24
|
+
| [model-viewer](https://modelviewer.dev/) |  |
|
|
25
|
+
| [@epigraph/epigraph-analytics](https://www.npmjs.com/package/@epigraph/epigraph-analytics) ||
|
|
26
|
+
| [qr-creator](https://www.npmjs.com/package/qr-creator) ||
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
# HOW TO:
|
|
30
|
+
|
|
31
|
+
### Add a new EpigraphLibrary:
|
|
32
|
+
1. Create a new directory under lib/EpigraphLibs/`<MyEpigraphLibrary>`
|
|
33
|
+
2. Create the module file/s. Ensure that the names of these files are in camelCase.
|
|
34
|
+
3. Export this module in lib/EpigraphLibs/epigraph-std-lib.ts as `export * from "./ThirdPartyLibs/main";`
|
|
35
|
+
4. Write a test for this Library under tests/<MyEpigraphLibrary.test.ts>
|
|
36
|
+
|
|
37
|
+
### Write a test:
|
|
38
|
+
We use [vitest](https://vitest.dev/guide/) to write tests in this repository using [happy-dom](https://www.npmjs.com/package/happy-dom) to support some but not all browser functionalities. In order to write a new test:
|
|
39
|
+
|
|
40
|
+
1. Create a new file for a specific test under tests/ as `<MyEpigraphLibrary>`.test.ts
|
|
41
|
+
2. Write a test following the instructions and samples [here](https://vitest.dev/guide/#writing-tests)
|
|
42
|
+
3. Make sure to import the library from "../dist/epigraph-std-lib" to avoid any issues that might come up after bundling.
|
|
43
|
+
4. Open a terminal and execute "npm run test". This will build all the libraries under dist/ and then run tests using those.
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
# REFERENCES
|
|
47
|
+
A huge thanks to everyone who inspired the setup for this repository:
|
|
48
|
+
1. [Andreas Riedmuller's Article](https://dev.to/receter/how-to-create-a-react-component-library-using-vites-library-mode-4lma)
|
|
49
|
+
2. [Vitest Docs](https://vitest.dev/guide/)
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { EpigraphLogger, LoggerModeNames } from '../EpigraphLibs/EpigraphLogger/epigraphLogger';
|
|
2
|
+
import { ENVIRONMENT_TYPE } from './constants/enums';
|
|
3
|
+
import { UrlProcessor } from '../EpigraphLibs/EpigraphUrlProcessor/epigraphUrlProcessor';
|
|
4
|
+
import { EpigraphBaseSolution } from '../EpigraphLibs/EpigraphBaseSolution/epigraphBaseSolution';
|
|
5
|
+
/**
|
|
6
|
+
* Epigraph component is intended to be a global source of truth/tracker in a given session for all of our components.
|
|
7
|
+
* This object would be responsible for serving/communicating/validating information, wherever necessary
|
|
8
|
+
* within or outside of the components.
|
|
9
|
+
*
|
|
10
|
+
* Additionally, it even exposes some useful functionality like QR code generation on demand, session tracking,
|
|
11
|
+
* global analytics tracker, etc.
|
|
12
|
+
*/
|
|
13
|
+
export declare class Epigraph {
|
|
14
|
+
id: string;
|
|
15
|
+
private _isReady;
|
|
16
|
+
private _logger;
|
|
17
|
+
private _initializer;
|
|
18
|
+
private _urlProcessor;
|
|
19
|
+
private _epigraphSessionId;
|
|
20
|
+
private _environment;
|
|
21
|
+
private _activeComponentsInSession;
|
|
22
|
+
private _staleComponentsInSession;
|
|
23
|
+
constructor(environment: ENVIRONMENT_TYPE, initializer: EpigraphBaseSolution);
|
|
24
|
+
get isReady(): boolean;
|
|
25
|
+
get logger(): EpigraphLogger;
|
|
26
|
+
get urlProcessor(): UrlProcessor;
|
|
27
|
+
get epigraphSessionId(): string;
|
|
28
|
+
get environment(): ENVIRONMENT_TYPE;
|
|
29
|
+
get initializer(): EpigraphBaseSolution;
|
|
30
|
+
get activeComponentsInSession(): Map<string, EpigraphBaseSolution>;
|
|
31
|
+
get staleComponentsInSession(): Map<string, EpigraphBaseSolution>;
|
|
32
|
+
/**
|
|
33
|
+
* Logs Epigraph Branding in the console to help redirect potential interests in the right direction.
|
|
34
|
+
*/
|
|
35
|
+
logBranding(): void;
|
|
36
|
+
/**
|
|
37
|
+
* Registers a new component that was initialized on this page.
|
|
38
|
+
* This is optional from the perspective of the initialization flow but highly recommend
|
|
39
|
+
* registering any component that gets initialized in this session.
|
|
40
|
+
* Any component that inherits from EpigraphBaseSolution should automatically register itself on initialization.
|
|
41
|
+
*
|
|
42
|
+
* @param {EpigraphBaseSolution} solutionRef A type of Epigraph base component that is initialized in the session.
|
|
43
|
+
*/
|
|
44
|
+
registerActiveComponent(solutionRef: EpigraphBaseSolution): void;
|
|
45
|
+
/**
|
|
46
|
+
* De-Registers a component that was initialized on this page.
|
|
47
|
+
* This is optional from the perspective of the unmount flow but highly recommend
|
|
48
|
+
* de-registering any component that gets removed in this session.
|
|
49
|
+
* Any component that inherits from EpigraphBaseSolution should automatically de-register itself on unmount.
|
|
50
|
+
*
|
|
51
|
+
* @param {EpigraphBaseSolution} solutionRef A type of Epigraph base component that is initialized in the session.
|
|
52
|
+
*/
|
|
53
|
+
deregisterActiveComponent(solutionRef: EpigraphBaseSolution): void;
|
|
54
|
+
/**
|
|
55
|
+
* Gets the mode that the logger should be executed in, based on the runtime environment.
|
|
56
|
+
*
|
|
57
|
+
* @returns {LoggerModeNames} A valid logger mode name.
|
|
58
|
+
*/
|
|
59
|
+
getLoggerModeNameFromEnvironment(): LoggerModeNames;
|
|
60
|
+
/**
|
|
61
|
+
* Generates a random UUID using crypto.randomUUID with a fallback on custom generator,
|
|
62
|
+
* if the first option fails for any reason in an environment.1
|
|
63
|
+
*
|
|
64
|
+
* @returns {string} A random generated ID.
|
|
65
|
+
*/
|
|
66
|
+
static safeGenerateUuid(): string;
|
|
67
|
+
/**
|
|
68
|
+
* Generates an XPath based on a DOM nodes location on the page.
|
|
69
|
+
*
|
|
70
|
+
* @param {HTMLElement} element The element that we need the XPath for.
|
|
71
|
+
* @returns {string} The generated XPath.
|
|
72
|
+
*/
|
|
73
|
+
static generateXPath(element: HTMLElement): string;
|
|
74
|
+
}
|
|
75
|
+
export { ENVIRONMENT_TYPE, EpigraphBaseSolution };
|
|
76
|
+
declare global {
|
|
77
|
+
interface Window {
|
|
78
|
+
epigraph: Epigraph;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ENVIRONMENT_TYPE } from '../../Epigraph/epigraph';
|
|
2
|
+
export declare class EpigraphBaseSolution extends HTMLElement {
|
|
3
|
+
private _xPath;
|
|
4
|
+
private _uuid;
|
|
5
|
+
protected _elementName: string;
|
|
6
|
+
protected _solutionVersion: string;
|
|
7
|
+
protected _loggerContextOverride: string;
|
|
8
|
+
constructor(solutionVersion: string, environment: ENVIRONMENT_TYPE);
|
|
9
|
+
get elementName(): string;
|
|
10
|
+
/**
|
|
11
|
+
* This is the npm package version of this solution.
|
|
12
|
+
*/
|
|
13
|
+
get solutionVersion(): string;
|
|
14
|
+
get uuid(): string;
|
|
15
|
+
get xPath(): string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Result } from '../EpigraphResultFactory/epigraphResultFactory.ts';
|
|
2
|
+
export declare class EpigraphNexusAPI {
|
|
3
|
+
private readonly baseUrl;
|
|
4
|
+
private readonly epgLocation;
|
|
5
|
+
private readonly epigraphSessionId;
|
|
6
|
+
private readonly epigraphXPath;
|
|
7
|
+
private readonly epigraphComponentVersion;
|
|
8
|
+
/**
|
|
9
|
+
* Constructs a new instance of the class with the provided parameters.
|
|
10
|
+
*
|
|
11
|
+
* @param {NexusEndpoints} [baseUrl=NexusEndpoints.PRODUCTION] - The base URL endpoint for the API, defaulting to the production environment.
|
|
12
|
+
* @param {string} epgLocation - The window.location.href associated with the epigraph data.
|
|
13
|
+
* @param {string} epigraphSessionId - The session identifier for the epigraph session.
|
|
14
|
+
* @param {string} epigraphComponentVersion - The version of the Epigraph Component(1.x.x or 1.2.1, etc.).
|
|
15
|
+
* @param {string} [epigraphXPath=""] - The XPath expression for epigraph data processing, defaults to an empty string.
|
|
16
|
+
* @param {NexusAPIVersions} [apiVersion=NexusAPIVersions.V1] - The API version to use, defaulting to version 1.
|
|
17
|
+
* @return {void}
|
|
18
|
+
*/
|
|
19
|
+
constructor(baseUrl: NexusEndpoints | undefined, epgLocation: string, epigraphSessionId: string, epigraphComponentVersion?: string, epigraphXPath?: string, apiVersion?: NexusAPIVersions);
|
|
20
|
+
/*******************************************************************************************************************
|
|
21
|
+
* Configurator API Calls *
|
|
22
|
+
******************************************************************************************************************/
|
|
23
|
+
getConfiguratorByExperienceId(experienceId: string, versionId?: string): Promise<Result>;
|
|
24
|
+
getConfiguratorByClientAccessKey(clientAccessKey: string, versionId?: string): Promise<Result>;
|
|
25
|
+
/*******************************************************************************************************************
|
|
26
|
+
* ConfiguratorLite API Calls *
|
|
27
|
+
******************************************************************************************************************/
|
|
28
|
+
getConfiguratorLiteByExperienceId(experienceId: string, versionId?: string): Promise<Result>;
|
|
29
|
+
getConfiguratorLiteByProjectId(projectId: string, versionId?: string): Promise<Result>;
|
|
30
|
+
/*******************************************************************************************************************
|
|
31
|
+
* Save & Share Calls *
|
|
32
|
+
******************************************************************************************************************/
|
|
33
|
+
postExperienceSaveAndShare(experienceId: string, saveData: object): Promise<Result>;
|
|
34
|
+
getExperienceSaveAndShare(experienceId: string, saveId: string): Promise<Result>;
|
|
35
|
+
/**
|
|
36
|
+
* Makes a call to the Nexus API and ensures the response is returned in JSON format.
|
|
37
|
+
* Automatically appends the `application/json` accept header if not already provided.
|
|
38
|
+
*
|
|
39
|
+
* @param {URL} url - The URL of the Nexus API endpoint to call.
|
|
40
|
+
* @param method
|
|
41
|
+
* @param body
|
|
42
|
+
* @param headers
|
|
43
|
+
* @return {Promise<Result>} A promise that resolves with the API response, encapsulated in a success or failure result format.
|
|
44
|
+
*/
|
|
45
|
+
private callNexusAPI;
|
|
46
|
+
private buildNexusUrl;
|
|
47
|
+
/**
|
|
48
|
+
* Adds required headers to the provided headers object if they are not already present.
|
|
49
|
+
* Ensures that the headers include "accept", "EPG-Location", "EPG-Session-ID",
|
|
50
|
+
* and "EPG-XPATH" with their respective values.
|
|
51
|
+
*
|
|
52
|
+
* @param {Headers} headers - The headers object to which the required headers will be added.
|
|
53
|
+
* @return {Headers} The updated headers object containing all required headers.
|
|
54
|
+
*/
|
|
55
|
+
private addRequiredHeaders;
|
|
56
|
+
}
|
|
57
|
+
export type QueryParameters = Record<string, any>;
|
|
58
|
+
export declare enum NexusEndpoints {
|
|
59
|
+
PRODUCTION = "https://api.myepigraph.com/api/",
|
|
60
|
+
STAGING = "https://nexus.epigraph.dev/api/",
|
|
61
|
+
LOCAL = "https://nexus.test/api/"
|
|
62
|
+
}
|
|
63
|
+
export declare enum NexusAPIResourceIdentifier {
|
|
64
|
+
CLIENT_ACCESS_KEY = "client_access_key",
|
|
65
|
+
EXPERIENCE_ID = "experience_id",
|
|
66
|
+
PROJECT_ID = "project_id"
|
|
67
|
+
}
|
|
68
|
+
export declare enum NexusAPIRoutes {
|
|
69
|
+
CONFIGURATOR = "experience/configurator/",
|
|
70
|
+
CONFIGURATOR_LITE = "experience/configurator-lite/",
|
|
71
|
+
EXPERIENCE = "experience/",
|
|
72
|
+
SAVE = "save/"
|
|
73
|
+
}
|
|
74
|
+
export declare enum NexusAPIVersions {
|
|
75
|
+
V1 = "v1/"
|
|
76
|
+
}
|
|
77
|
+
export declare enum HTTPMethod {
|
|
78
|
+
GET = "GET",
|
|
79
|
+
POST = "POST",
|
|
80
|
+
PUT = "PUT",
|
|
81
|
+
DELETE = "DELETE"
|
|
82
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { Ref } from 'lit/directives/ref.js';
|
|
3
|
+
import { default as QrCreator } from 'qr-creator';
|
|
4
|
+
export declare class EpigraphQrCodeGenerator extends LitElement {
|
|
5
|
+
static webComponentName: string;
|
|
6
|
+
_qrCodeGenCanvasRef: Ref<HTMLCanvasElement>;
|
|
7
|
+
static styles: import('lit').CSSResult;
|
|
8
|
+
/**
|
|
9
|
+
* Converts any given data uri to a blob.
|
|
10
|
+
*
|
|
11
|
+
* @param {string} dataUri Raw data URI, either fetched from an HTML Canvas or any other valid source.
|
|
12
|
+
* @returns {Blob} The generate blob.
|
|
13
|
+
*/
|
|
14
|
+
dataUritoBlob(dataUri: string): Blob;
|
|
15
|
+
/**
|
|
16
|
+
* Generates a QR code as image data url for the qrCodeContent provided.
|
|
17
|
+
*
|
|
18
|
+
* @param {string} qrCodeContent The content to be embedded in the QR code.
|
|
19
|
+
* @returns {string} Session data URL for the generated QR code.
|
|
20
|
+
*/
|
|
21
|
+
generateQrCode(qrCodeConfig?: QrCreator.Config): string;
|
|
22
|
+
/**
|
|
23
|
+
* Override for the LitElement's render method.
|
|
24
|
+
*
|
|
25
|
+
* @returns {html} HTML to be rendered by this component.
|
|
26
|
+
*/
|
|
27
|
+
protected render(): import('lit-html').TemplateResult<1>;
|
|
28
|
+
}
|
|
29
|
+
declare global {
|
|
30
|
+
interface HTMLElementTagNameMap {
|
|
31
|
+
"epigraph-qr-code-generator": EpigraphQrCodeGenerator;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare class Result {
|
|
2
|
+
private readonly _success;
|
|
3
|
+
private readonly _payload;
|
|
4
|
+
private readonly _status;
|
|
5
|
+
private readonly _message;
|
|
6
|
+
constructor(success: boolean, payload: any, status: number, message?: string);
|
|
7
|
+
get success(): boolean;
|
|
8
|
+
get payload(): any;
|
|
9
|
+
get status(): number;
|
|
10
|
+
get message(): string;
|
|
11
|
+
}
|
|
12
|
+
export declare function successResult(payload: any, status: number, message?: string): Result;
|
|
13
|
+
export declare function failureResult(payload: any, status: number, error?: string): Result;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DistanceUnits, UnitTypes } from
|
|
2
|
-
import { IConvertedUnitResult } from
|
|
1
|
+
import { DistanceUnits, UnitTypes } from './enums';
|
|
2
|
+
import { IConvertedUnitResult } from './interfaces';
|
|
3
3
|
/**
|
|
4
4
|
* USAGE: Initialise this class with an initial value of the distance with it's unit.
|
|
5
5
|
* Then use the exposed methods to get the value of the initial value in*() various units supported.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export declare const enum QUERY_PARAMETER_ACTION_NAMES {
|
|
2
|
+
AR = "ar"
|
|
3
|
+
}
|
|
4
|
+
export declare const enum QUERY_PARAMETER_NAMES {
|
|
5
|
+
type = "t",
|
|
6
|
+
identifierType = "idt",
|
|
7
|
+
identifier = "id",
|
|
8
|
+
epigraphSessionId = "eid",
|
|
9
|
+
action = "a"
|
|
10
|
+
}
|
|
11
|
+
export declare class UrlProcessor {
|
|
12
|
+
private _baseUrl;
|
|
13
|
+
constructor(baseUrl?: string);
|
|
14
|
+
get baseUrl(): string;
|
|
15
|
+
set baseUrl(newBaseUrl: string);
|
|
16
|
+
/**
|
|
17
|
+
* Gets the parameters from the baseUrl of this class instance.
|
|
18
|
+
* This handles both encrypted and decrypted URLs.
|
|
19
|
+
*
|
|
20
|
+
* @param {string} parameterToSearch Name of the parameter that needs to be queried from the current URL.
|
|
21
|
+
* @returns {string | null} Either the value of the parameterToSearch or null if not found.
|
|
22
|
+
*/
|
|
23
|
+
getParameterInUrl(parameterToSearch: string): string | null;
|
|
24
|
+
/**
|
|
25
|
+
* A convenience wrapper to test if the URL has a given parameter name in the query parameters.
|
|
26
|
+
* This handles both encrypted and decrypted URLs.
|
|
27
|
+
*
|
|
28
|
+
* @param {string} parameterToSearch Name of the parameter that needs to be queried from the current URL.
|
|
29
|
+
* @returns {boolean} Whether the parameter exists in the current URL.
|
|
30
|
+
*/
|
|
31
|
+
hasParameterInUrl(parameterToSearch: string): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Generate the URL to be shown as View in your space QR code.
|
|
34
|
+
*
|
|
35
|
+
* @param {object} parametersToAdd Object containing <key>parameter_name: <value>parameter_value for the URL.
|
|
36
|
+
* @param {boolean} encryptParameters Whether the parameters be encrypted within the URL.
|
|
37
|
+
* @returns {URL} The generated URL.
|
|
38
|
+
*/
|
|
39
|
+
generateQrCodeUrl(parametersToAdd?: object, encryptParameters?: boolean): URL;
|
|
40
|
+
/**
|
|
41
|
+
* Encrypts the query parameters in a given URL object using base64 encoding.
|
|
42
|
+
*
|
|
43
|
+
* @param {URL} url The original url object with query parameters.
|
|
44
|
+
* @returns {URL} Process URL object with encrypted parameters
|
|
45
|
+
*/
|
|
46
|
+
encryptQueryParametersInUrl(url: URL): URL;
|
|
47
|
+
/**
|
|
48
|
+
* Decrypts the query parameters in a given URL object using base64 encoding.
|
|
49
|
+
*
|
|
50
|
+
* @param {URL} url The original url object with query parameters.
|
|
51
|
+
* @returns {URL} Process URL object with decrypted parameters
|
|
52
|
+
*/
|
|
53
|
+
decryptQueryParametersInUrl(url: URL): URL;
|
|
54
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * as epigraphLogger from './EpigraphLogger/epigraphLogger';
|
|
2
|
+
export * as epigraphUrlProcessor from './EpigraphUrlProcessor/epigraphUrlProcessor';
|
|
3
|
+
export * as epigraphBaseSolution from './EpigraphBaseSolution/epigraphBaseSolution';
|
|
4
|
+
export * as epgUnitsConverter from './EpigraphUnitsConverter/epigraphUnitsConverter';
|
|
5
|
+
export * as epigraphQrCodeGenerator from './EpigraphQrCodeGenerator/epigraphQrCodeGenerator';
|
|
6
|
+
export { EpigraphAnalytics, GA3AnalyticsPlugin, GA4AnalyticsPlugin, OneTrustConsentPlugin, NexusAnalyticsPlugin, ConsentPluginNames } from '@epigraph/epigraph-analytics';
|
|
7
|
+
export * from './EpigraphResultFactory/epigraphResultFactory';
|
|
8
|
+
export * from './EpigraphNexusApi/epigraphNexusApi';
|
|
9
|
+
export type { AnalyticsEvent } from '@epigraph/epigraph-analytics';
|