@glowhop/angular-tour 1.0.0
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/.npmignore +2 -0
- package/CHANGELOG.md +12 -0
- package/LICENSE +22 -0
- package/README.md +33 -0
- package/config/index.d.ts +5 -0
- package/config/package.json +3 -0
- package/config/public-api.d.ts +37 -0
- package/esm2022/config/glowhop-angular-tour-config.mjs +5 -0
- package/esm2022/config/public-api.mjs +25 -0
- package/esm2022/glowhop-angular-tour.mjs +5 -0
- package/esm2022/lib/components/default-tour.mjs +66 -0
- package/esm2022/lib/components/tour-components.mjs +624 -0
- package/esm2022/lib/glow-tour.mjs +10 -0
- package/esm2022/public-api.mjs +4 -0
- package/fesm2022/glowhop-angular-tour-config.mjs +32 -0
- package/fesm2022/glowhop-angular-tour-config.mjs.map +1 -0
- package/fesm2022/glowhop-angular-tour.mjs +704 -0
- package/fesm2022/glowhop-angular-tour.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/default-tour.d.ts +11 -0
- package/lib/components/tour-components.d.ts +173 -0
- package/lib/glow-tour.d.ts +20 -0
- package/package.json +51 -0
- package/public-api.d.ts +6 -0
package/.npmignore
ADDED
package/CHANGELOG.md
ADDED
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Glowhop
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
package/README.md
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# @glowhop/angular-tour
|
|
2
|
+
|
|
3
|
+
ESM-only Angular 18 adapter with DI-scoped signals for native reactive state. Content is Angular template content. See the [Core guide](https://github.com/Glowhop/GlowTour.js/tree/main/packages/core) for workflow options and actions.
|
|
4
|
+
|
|
5
|
+
Compatibility: Angular 18+ (`^18.0.0`). SSR: package imports are DOM-free, so the adapter should work under Angular Universal; hydration is untested — no verified SSR coverage exists. Full contract: [compatibility](https://github.com/Glowhop/GlowTour.js/blob/main/docs/compatibility.md).
|
|
6
|
+
|
|
7
|
+
<!-- glow-tour:snippet angular-quick-start -->
|
|
8
|
+
```ts
|
|
9
|
+
import { Component } from "@angular/core";
|
|
10
|
+
import "@glowhop/styles-tour/default.css";
|
|
11
|
+
import { createGlowTour, GlowTourDefault } from "@glowhop/angular-tour";
|
|
12
|
+
|
|
13
|
+
@Component({
|
|
14
|
+
standalone: true,
|
|
15
|
+
imports: [GlowTourDefault],
|
|
16
|
+
template: '<button id="welcome">Welcome</button><button type="button" (click)="start()">Start tour</button><glow-tour-default [tour]="tour" />',
|
|
17
|
+
})
|
|
18
|
+
export class Onboarding {
|
|
19
|
+
readonly tour = createGlowTour();
|
|
20
|
+
readonly workflow = this.tour.create("intro").step({ id: "welcome", target: "#welcome", title: "Welcome", content: "Hello." }).build();
|
|
21
|
+
start() { void this.tour.run(this.workflow); }
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
<!-- glow-tour:snippet angular-advanced -->
|
|
26
|
+
```ts
|
|
27
|
+
import { Component } from "@angular/core";
|
|
28
|
+
import { GlowTourRoot, GlowTourOverlay, GlowTourPopover, GlowTourHeader, GlowTourContent, GlowTourFooter, GlowTourAdvanceTrigger, createGlowTour } from "@glowhop/angular-tour";
|
|
29
|
+
@Component({ standalone: true, imports: [GlowTourRoot, GlowTourOverlay, GlowTourPopover, GlowTourHeader, GlowTourContent, GlowTourFooter, GlowTourAdvanceTrigger], template: '<button id="welcome" type="button" (click)="start()">Start</button><glow-tour-root [tour]="tour"><glow-tour-overlay /><glow-tour-popover><glow-tour-header /><glow-tour-content /><glow-tour-footer><glow-tour-advance-trigger /></glow-tour-footer></glow-tour-popover></glow-tour-root>' })
|
|
30
|
+
export class CustomTour { readonly tour = createGlowTour(); readonly workflow = this.tour.create("custom").step({ id: "welcome", target: "#welcome", title: "Welcome", content: "Hello." }).build(); start() { void this.tour.run(this.workflow); } }
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Use `GlowTourRoot`, `GlowTourOverlay`, `GlowTourPointer`, `GlowTourPopover`, `GlowTourHeader`, `GlowTourContent`, `GlowTourFooter`, and named triggers for composition. Angular signals and DI provide the native state surface. Static/dynamic targets, placement, interaction, scroll, callbacks, actions/events, cancellation, and cleanup follow Core.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { AngularTourContent } from "@glowhop/angular-tour";
|
|
2
|
+
import type { BuiltinAction, ConfigValidationIssue, EventHandlerConfig as CoreEventHandlerConfig, LifecycleActionRef as CoreLifecycleActionRef, StepActionRef as CoreStepActionRef, StepConfig as CoreStepConfig, TransitionActionRef as CoreTransitionActionRef, WorkflowConfig as CoreWorkflowConfig, WorkflowDefinitionFromConfig as CoreWorkflowDefinitionFromConfig, CreateWorkflowFromConfigOptions, ValidateWorkflowConfigOptions } from "@glowhop/core-tour/config";
|
|
3
|
+
import { ConfigValidationError } from "@glowhop/core-tour/config";
|
|
4
|
+
export type { BuiltinAction, ConfigValidationIssue, CreateWorkflowFromConfigOptions, ValidateWorkflowConfigOptions, };
|
|
5
|
+
export { ConfigValidationError };
|
|
6
|
+
/** Angular workflow config: `WorkflowConfig` pre-bound to `AngularTourContent`. */
|
|
7
|
+
export type WorkflowConfig = CoreWorkflowConfig<AngularTourContent>;
|
|
8
|
+
/** Angular step config: `StepConfig` pre-bound to `AngularTourContent`. */
|
|
9
|
+
export type StepConfig = CoreStepConfig<AngularTourContent>;
|
|
10
|
+
/** Angular event handler config: `EventHandlerConfig` pre-bound to `AngularTourContent`. */
|
|
11
|
+
export type EventHandlerConfig = CoreEventHandlerConfig<AngularTourContent>;
|
|
12
|
+
/** Angular step action reference: `StepActionRef` pre-bound to `AngularTourContent`. */
|
|
13
|
+
export type StepActionRef = CoreStepActionRef<AngularTourContent>;
|
|
14
|
+
/** Angular transition action reference: `TransitionActionRef` pre-bound to `AngularTourContent`. */
|
|
15
|
+
export type TransitionActionRef = CoreTransitionActionRef<AngularTourContent>;
|
|
16
|
+
/** Angular lifecycle action reference: `LifecycleActionRef` pre-bound to `AngularTourContent`. */
|
|
17
|
+
export type LifecycleActionRef = CoreLifecycleActionRef<AngularTourContent>;
|
|
18
|
+
/** Angular workflow definition produced from config, pre-bound to `AngularTourContent`. */
|
|
19
|
+
export type WorkflowDefinitionFromConfig = CoreWorkflowDefinitionFromConfig<AngularTourContent>;
|
|
20
|
+
/**
|
|
21
|
+
* Builds an Angular `WorkflowDefinition` from a JSON-serializable config, pre-bound to
|
|
22
|
+
* `AngularTourContent` so the result is accepted by `createGlowTour().run(...)` with no generic
|
|
23
|
+
* and no cast.
|
|
24
|
+
* @param config The parsed JSON (or equivalent plain object) to build from.
|
|
25
|
+
* @param options Options; see `CreateWorkflowFromConfigOptions`.
|
|
26
|
+
* @throws {ConfigValidationError} When the config is invalid.
|
|
27
|
+
* @returns A frozen `WorkflowDefinition` with `.source` attached.
|
|
28
|
+
*/
|
|
29
|
+
export declare function createWorkflowFromConfig(config: unknown, options?: CreateWorkflowFromConfigOptions): WorkflowDefinitionFromConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Validates and narrows an unknown value to an Angular `WorkflowConfig`.
|
|
32
|
+
* @param config The parsed JSON (or equivalent plain object) to validate.
|
|
33
|
+
* @param options Validation options; see `ValidateWorkflowConfigOptions`.
|
|
34
|
+
* @throws {ConfigValidationError} When one or more issues are found.
|
|
35
|
+
* @returns The same value, narrowed to `WorkflowConfig`.
|
|
36
|
+
*/
|
|
37
|
+
export declare function validateWorkflowConfig(config: unknown, options?: ValidateWorkflowConfigOptions): WorkflowConfig;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvd2hvcC1hbmd1bGFyLXRvdXItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vY29uZmlnL2dsb3dob3AtYW5ndWxhci10b3VyLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ConfigValidationError, createWorkflowFromConfig as createCoreWorkflowFromConfig, validateWorkflowConfig as validateCoreWorkflowConfig, } from "@glowhop/core-tour/config";
|
|
2
|
+
export { ConfigValidationError };
|
|
3
|
+
/**
|
|
4
|
+
* Builds an Angular `WorkflowDefinition` from a JSON-serializable config, pre-bound to
|
|
5
|
+
* `AngularTourContent` so the result is accepted by `createGlowTour().run(...)` with no generic
|
|
6
|
+
* and no cast.
|
|
7
|
+
* @param config The parsed JSON (or equivalent plain object) to build from.
|
|
8
|
+
* @param options Options; see `CreateWorkflowFromConfigOptions`.
|
|
9
|
+
* @throws {ConfigValidationError} When the config is invalid.
|
|
10
|
+
* @returns A frozen `WorkflowDefinition` with `.source` attached.
|
|
11
|
+
*/
|
|
12
|
+
export function createWorkflowFromConfig(config, options = {}) {
|
|
13
|
+
return createCoreWorkflowFromConfig(config, options);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Validates and narrows an unknown value to an Angular `WorkflowConfig`.
|
|
17
|
+
* @param config The parsed JSON (or equivalent plain object) to validate.
|
|
18
|
+
* @param options Validation options; see `ValidateWorkflowConfigOptions`.
|
|
19
|
+
* @throws {ConfigValidationError} When one or more issues are found.
|
|
20
|
+
* @returns The same value, narrowed to `WorkflowConfig`.
|
|
21
|
+
*/
|
|
22
|
+
export function validateWorkflowConfig(config, options = {}) {
|
|
23
|
+
return validateCoreWorkflowConfig(config, options);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2NvbmZpZy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWNBLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsd0JBQXdCLElBQUksNEJBQTRCLEVBQ3hELHNCQUFzQixJQUFJLDBCQUEwQixHQUNyRCxNQUFNLDJCQUEyQixDQUFDO0FBUW5DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0FBaUJqQzs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSx3QkFBd0IsQ0FDdEMsTUFBZSxFQUNmLFVBQTJDLEVBQUU7SUFFN0MsT0FBTyw0QkFBNEIsQ0FBcUIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzNFLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQ3BDLE1BQWUsRUFDZixVQUF5QyxFQUFFO0lBRTNDLE9BQU8sMEJBQTBCLENBQXFCLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN6RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBBbmd1bGFyVG91ckNvbnRlbnQgfSBmcm9tIFwiQGdsb3dob3AvYW5ndWxhci10b3VyXCI7XG5pbXBvcnQgdHlwZSB7XG4gIEJ1aWx0aW5BY3Rpb24sXG4gIENvbmZpZ1ZhbGlkYXRpb25Jc3N1ZSxcbiAgRXZlbnRIYW5kbGVyQ29uZmlnIGFzIENvcmVFdmVudEhhbmRsZXJDb25maWcsXG4gIExpZmVjeWNsZUFjdGlvblJlZiBhcyBDb3JlTGlmZWN5Y2xlQWN0aW9uUmVmLFxuICBTdGVwQWN0aW9uUmVmIGFzIENvcmVTdGVwQWN0aW9uUmVmLFxuICBTdGVwQ29uZmlnIGFzIENvcmVTdGVwQ29uZmlnLFxuICBUcmFuc2l0aW9uQWN0aW9uUmVmIGFzIENvcmVUcmFuc2l0aW9uQWN0aW9uUmVmLFxuICBXb3JrZmxvd0NvbmZpZyBhcyBDb3JlV29ya2Zsb3dDb25maWcsXG4gIFdvcmtmbG93RGVmaW5pdGlvbkZyb21Db25maWcgYXMgQ29yZVdvcmtmbG93RGVmaW5pdGlvbkZyb21Db25maWcsXG4gIENyZWF0ZVdvcmtmbG93RnJvbUNvbmZpZ09wdGlvbnMsXG4gIFZhbGlkYXRlV29ya2Zsb3dDb25maWdPcHRpb25zLFxufSBmcm9tIFwiQGdsb3dob3AvY29yZS10b3VyL2NvbmZpZ1wiO1xuaW1wb3J0IHtcbiAgQ29uZmlnVmFsaWRhdGlvbkVycm9yLFxuICBjcmVhdGVXb3JrZmxvd0Zyb21Db25maWcgYXMgY3JlYXRlQ29yZVdvcmtmbG93RnJvbUNvbmZpZyxcbiAgdmFsaWRhdGVXb3JrZmxvd0NvbmZpZyBhcyB2YWxpZGF0ZUNvcmVXb3JrZmxvd0NvbmZpZyxcbn0gZnJvbSBcIkBnbG93aG9wL2NvcmUtdG91ci9jb25maWdcIjtcblxuZXhwb3J0IHR5cGUge1xuICBCdWlsdGluQWN0aW9uLFxuICBDb25maWdWYWxpZGF0aW9uSXNzdWUsXG4gIENyZWF0ZVdvcmtmbG93RnJvbUNvbmZpZ09wdGlvbnMsXG4gIFZhbGlkYXRlV29ya2Zsb3dDb25maWdPcHRpb25zLFxufTtcbmV4cG9ydCB7IENvbmZpZ1ZhbGlkYXRpb25FcnJvciB9O1xuXG4vKiogQW5ndWxhciB3b3JrZmxvdyBjb25maWc6IGBXb3JrZmxvd0NvbmZpZ2AgcHJlLWJvdW5kIHRvIGBBbmd1bGFyVG91ckNvbnRlbnRgLiAqL1xuZXhwb3J0IHR5cGUgV29ya2Zsb3dDb25maWcgPSBDb3JlV29ya2Zsb3dDb25maWc8QW5ndWxhclRvdXJDb250ZW50Pjtcbi8qKiBBbmd1bGFyIHN0ZXAgY29uZmlnOiBgU3RlcENvbmZpZ2AgcHJlLWJvdW5kIHRvIGBBbmd1bGFyVG91ckNvbnRlbnRgLiAqL1xuZXhwb3J0IHR5cGUgU3RlcENvbmZpZyA9IENvcmVTdGVwQ29uZmlnPEFuZ3VsYXJUb3VyQ29udGVudD47XG4vKiogQW5ndWxhciBldmVudCBoYW5kbGVyIGNvbmZpZzogYEV2ZW50SGFuZGxlckNvbmZpZ2AgcHJlLWJvdW5kIHRvIGBBbmd1bGFyVG91ckNvbnRlbnRgLiAqL1xuZXhwb3J0IHR5cGUgRXZlbnRIYW5kbGVyQ29uZmlnID0gQ29yZUV2ZW50SGFuZGxlckNvbmZpZzxBbmd1bGFyVG91ckNvbnRlbnQ+O1xuLyoqIEFuZ3VsYXIgc3RlcCBhY3Rpb24gcmVmZXJlbmNlOiBgU3RlcEFjdGlvblJlZmAgcHJlLWJvdW5kIHRvIGBBbmd1bGFyVG91ckNvbnRlbnRgLiAqL1xuZXhwb3J0IHR5cGUgU3RlcEFjdGlvblJlZiA9IENvcmVTdGVwQWN0aW9uUmVmPEFuZ3VsYXJUb3VyQ29udGVudD47XG4vKiogQW5ndWxhciB0cmFuc2l0aW9uIGFjdGlvbiByZWZlcmVuY2U6IGBUcmFuc2l0aW9uQWN0aW9uUmVmYCBwcmUtYm91bmQgdG8gYEFuZ3VsYXJUb3VyQ29udGVudGAuICovXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uQWN0aW9uUmVmID0gQ29yZVRyYW5zaXRpb25BY3Rpb25SZWY8QW5ndWxhclRvdXJDb250ZW50Pjtcbi8qKiBBbmd1bGFyIGxpZmVjeWNsZSBhY3Rpb24gcmVmZXJlbmNlOiBgTGlmZWN5Y2xlQWN0aW9uUmVmYCBwcmUtYm91bmQgdG8gYEFuZ3VsYXJUb3VyQ29udGVudGAuICovXG5leHBvcnQgdHlwZSBMaWZlY3ljbGVBY3Rpb25SZWYgPSBDb3JlTGlmZWN5Y2xlQWN0aW9uUmVmPEFuZ3VsYXJUb3VyQ29udGVudD47XG4vKiogQW5ndWxhciB3b3JrZmxvdyBkZWZpbml0aW9uIHByb2R1Y2VkIGZyb20gY29uZmlnLCBwcmUtYm91bmQgdG8gYEFuZ3VsYXJUb3VyQ29udGVudGAuICovXG5leHBvcnQgdHlwZSBXb3JrZmxvd0RlZmluaXRpb25Gcm9tQ29uZmlnID0gQ29yZVdvcmtmbG93RGVmaW5pdGlvbkZyb21Db25maWc8QW5ndWxhclRvdXJDb250ZW50PjtcblxuLyoqXG4gKiBCdWlsZHMgYW4gQW5ndWxhciBgV29ya2Zsb3dEZWZpbml0aW9uYCBmcm9tIGEgSlNPTi1zZXJpYWxpemFibGUgY29uZmlnLCBwcmUtYm91bmQgdG9cbiAqIGBBbmd1bGFyVG91ckNvbnRlbnRgIHNvIHRoZSByZXN1bHQgaXMgYWNjZXB0ZWQgYnkgYGNyZWF0ZUdsb3dUb3VyKCkucnVuKC4uLilgIHdpdGggbm8gZ2VuZXJpY1xuICogYW5kIG5vIGNhc3QuXG4gKiBAcGFyYW0gY29uZmlnIFRoZSBwYXJzZWQgSlNPTiAob3IgZXF1aXZhbGVudCBwbGFpbiBvYmplY3QpIHRvIGJ1aWxkIGZyb20uXG4gKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zOyBzZWUgYENyZWF0ZVdvcmtmbG93RnJvbUNvbmZpZ09wdGlvbnNgLlxuICogQHRocm93cyB7Q29uZmlnVmFsaWRhdGlvbkVycm9yfSBXaGVuIHRoZSBjb25maWcgaXMgaW52YWxpZC5cbiAqIEByZXR1cm5zIEEgZnJvemVuIGBXb3JrZmxvd0RlZmluaXRpb25gIHdpdGggYC5zb3VyY2VgIGF0dGFjaGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV29ya2Zsb3dGcm9tQ29uZmlnKFxuICBjb25maWc6IHVua25vd24sXG4gIG9wdGlvbnM6IENyZWF0ZVdvcmtmbG93RnJvbUNvbmZpZ09wdGlvbnMgPSB7fSxcbik6IFdvcmtmbG93RGVmaW5pdGlvbkZyb21Db25maWcge1xuICByZXR1cm4gY3JlYXRlQ29yZVdvcmtmbG93RnJvbUNvbmZpZzxBbmd1bGFyVG91ckNvbnRlbnQ+KGNvbmZpZywgb3B0aW9ucyk7XG59XG5cbi8qKlxuICogVmFsaWRhdGVzIGFuZCBuYXJyb3dzIGFuIHVua25vd24gdmFsdWUgdG8gYW4gQW5ndWxhciBgV29ya2Zsb3dDb25maWdgLlxuICogQHBhcmFtIGNvbmZpZyBUaGUgcGFyc2VkIEpTT04gKG9yIGVxdWl2YWxlbnQgcGxhaW4gb2JqZWN0KSB0byB2YWxpZGF0ZS5cbiAqIEBwYXJhbSBvcHRpb25zIFZhbGlkYXRpb24gb3B0aW9uczsgc2VlIGBWYWxpZGF0ZVdvcmtmbG93Q29uZmlnT3B0aW9uc2AuXG4gKiBAdGhyb3dzIHtDb25maWdWYWxpZGF0aW9uRXJyb3J9IFdoZW4gb25lIG9yIG1vcmUgaXNzdWVzIGFyZSBmb3VuZC5cbiAqIEByZXR1cm5zIFRoZSBzYW1lIHZhbHVlLCBuYXJyb3dlZCB0byBgV29ya2Zsb3dDb25maWdgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVXb3JrZmxvd0NvbmZpZyhcbiAgY29uZmlnOiB1bmtub3duLFxuICBvcHRpb25zOiBWYWxpZGF0ZVdvcmtmbG93Q29uZmlnT3B0aW9ucyA9IHt9LFxuKTogV29ya2Zsb3dDb25maWcge1xuICByZXR1cm4gdmFsaWRhdGVDb3JlV29ya2Zsb3dDb25maWc8QW5ndWxhclRvdXJDb250ZW50Pihjb25maWcsIG9wdGlvbnMpO1xufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvd2hvcC1hbmd1bGFyLXRvdXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2xvd2hvcC1hbmd1bGFyLXRvdXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { GlowTourAdvanceTrigger, GlowTourBackTrigger, GlowTourCancelTrigger, GlowTourContent, GlowTourFooter, GlowTourHeader, GlowTourOverlay, GlowTourPointer, GlowTourPopover, GlowTourRoot, } from "./tour-components";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/** Default GlowTour.js component that renders all tour UI elements in a standard layout. */
|
|
5
|
+
export class GlowTourDefault {
|
|
6
|
+
/** The tour controller instance to display. */
|
|
7
|
+
tour;
|
|
8
|
+
/** Optional prefix for generated HTML IDs. */
|
|
9
|
+
idPrefix;
|
|
10
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GlowTourDefault, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GlowTourDefault, isStandalone: true, selector: "glow-tour-default", inputs: { tour: "tour", idPrefix: "idPrefix" }, ngImport: i0, template: `
|
|
12
|
+
<glow-tour-root [tour]="tour" [idPrefix]="idPrefix">
|
|
13
|
+
<glow-tour-overlay />
|
|
14
|
+
<glow-tour-pointer />
|
|
15
|
+
<glow-tour-popover>
|
|
16
|
+
<glow-tour-header />
|
|
17
|
+
<glow-tour-content />
|
|
18
|
+
<glow-tour-footer>
|
|
19
|
+
<glow-tour-cancel-trigger />
|
|
20
|
+
<glow-tour-back-trigger />
|
|
21
|
+
<glow-tour-advance-trigger />
|
|
22
|
+
</glow-tour-footer>
|
|
23
|
+
</glow-tour-popover>
|
|
24
|
+
</glow-tour-root>
|
|
25
|
+
`, isInline: true, dependencies: [{ kind: "component", type: GlowTourRoot, selector: "glow-tour-root", inputs: ["tour", "idPrefix"] }, { kind: "component", type: GlowTourOverlay, selector: "glow-tour-overlay" }, { kind: "component", type: GlowTourPointer, selector: "glow-tour-pointer", inputs: ["directionContent"] }, { kind: "component", type: GlowTourPopover, selector: "glow-tour-popover" }, { kind: "component", type: GlowTourHeader, selector: "glow-tour-header" }, { kind: "component", type: GlowTourContent, selector: "glow-tour-content" }, { kind: "component", type: GlowTourFooter, selector: "glow-tour-footer" }, { kind: "component", type: GlowTourCancelTrigger, selector: "glow-tour-cancel-trigger", inputs: ["ariaLabel", "disabled"] }, { kind: "component", type: GlowTourBackTrigger, selector: "glow-tour-back-trigger", inputs: ["ariaLabel", "backLabel", "disabled"] }, { kind: "component", type: GlowTourAdvanceTrigger, selector: "glow-tour-advance-trigger", inputs: ["ariaLabel", "disabled", "finishLabel", "advanceLabel"] }] });
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GlowTourDefault, decorators: [{
|
|
28
|
+
type: Component,
|
|
29
|
+
args: [{
|
|
30
|
+
selector: "glow-tour-default",
|
|
31
|
+
standalone: true,
|
|
32
|
+
imports: [
|
|
33
|
+
GlowTourRoot,
|
|
34
|
+
GlowTourOverlay,
|
|
35
|
+
GlowTourPointer,
|
|
36
|
+
GlowTourPopover,
|
|
37
|
+
GlowTourHeader,
|
|
38
|
+
GlowTourContent,
|
|
39
|
+
GlowTourFooter,
|
|
40
|
+
GlowTourCancelTrigger,
|
|
41
|
+
GlowTourBackTrigger,
|
|
42
|
+
GlowTourAdvanceTrigger,
|
|
43
|
+
],
|
|
44
|
+
template: `
|
|
45
|
+
<glow-tour-root [tour]="tour" [idPrefix]="idPrefix">
|
|
46
|
+
<glow-tour-overlay />
|
|
47
|
+
<glow-tour-pointer />
|
|
48
|
+
<glow-tour-popover>
|
|
49
|
+
<glow-tour-header />
|
|
50
|
+
<glow-tour-content />
|
|
51
|
+
<glow-tour-footer>
|
|
52
|
+
<glow-tour-cancel-trigger />
|
|
53
|
+
<glow-tour-back-trigger />
|
|
54
|
+
<glow-tour-advance-trigger />
|
|
55
|
+
</glow-tour-footer>
|
|
56
|
+
</glow-tour-popover>
|
|
57
|
+
</glow-tour-root>
|
|
58
|
+
`,
|
|
59
|
+
}]
|
|
60
|
+
}], propDecorators: { tour: [{
|
|
61
|
+
type: Input,
|
|
62
|
+
args: [{ required: true }]
|
|
63
|
+
}], idPrefix: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}] } });
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC10b3VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2RlZmF1bHQtdG91ci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIsZUFBZSxFQUNmLGNBQWMsRUFDZCxjQUFjLEVBQ2QsZUFBZSxFQUNmLGVBQWUsRUFDZixlQUFlLEVBQ2YsWUFBWSxHQUNiLE1BQU0sbUJBQW1CLENBQUM7O0FBaUMzQiw0RkFBNEY7QUFDNUYsTUFBTSxPQUFPLGVBQWU7SUFDMUIsK0NBQStDO0lBQ3BCLElBQUksQ0FBZ0M7SUFDL0QsOENBQThDO0lBQ3JDLFFBQVEsQ0FBVTt3R0FKaEIsZUFBZTs0RkFBZixlQUFlLDZIQWpCaEI7Ozs7Ozs7Ozs7Ozs7O0dBY1QsNERBekJDLFlBQVkseUZBQ1osZUFBZSw4REFDZixlQUFlLDRGQUNmLGVBQWUsOERBQ2YsY0FBYyw2REFDZCxlQUFlLDhEQUNmLGNBQWMsNkRBQ2QscUJBQXFCLHdHQUNyQixtQkFBbUIsbUhBQ25CLHNCQUFzQjs7NEZBbUJiLGVBQWU7a0JBaEMzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3FCQUN2QjtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7O0dBY1Q7aUJBQ0Y7OEJBSTRCLElBQUk7c0JBQTlCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUVoQixRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgdHlwZSB7IEdsb3dUb3VyIH0gZnJvbSBcIkBnbG93aG9wL2NvcmUtdG91clwiO1xuaW1wb3J0IHR5cGUgeyBBbmd1bGFyVG91ckNvbnRlbnQgfSBmcm9tIFwiLi4vZ2xvdy10b3VyXCI7XG5pbXBvcnQge1xuICBHbG93VG91ckFkdmFuY2VUcmlnZ2VyLFxuICBHbG93VG91ckJhY2tUcmlnZ2VyLFxuICBHbG93VG91ckNhbmNlbFRyaWdnZXIsXG4gIEdsb3dUb3VyQ29udGVudCxcbiAgR2xvd1RvdXJGb290ZXIsXG4gIEdsb3dUb3VySGVhZGVyLFxuICBHbG93VG91ck92ZXJsYXksXG4gIEdsb3dUb3VyUG9pbnRlcixcbiAgR2xvd1RvdXJQb3BvdmVyLFxuICBHbG93VG91clJvb3QsXG59IGZyb20gXCIuL3RvdXItY29tcG9uZW50c1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZ2xvdy10b3VyLWRlZmF1bHRcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEdsb3dUb3VyUm9vdCxcbiAgICBHbG93VG91ck92ZXJsYXksXG4gICAgR2xvd1RvdXJQb2ludGVyLFxuICAgIEdsb3dUb3VyUG9wb3ZlcixcbiAgICBHbG93VG91ckhlYWRlcixcbiAgICBHbG93VG91ckNvbnRlbnQsXG4gICAgR2xvd1RvdXJGb290ZXIsXG4gICAgR2xvd1RvdXJDYW5jZWxUcmlnZ2VyLFxuICAgIEdsb3dUb3VyQmFja1RyaWdnZXIsXG4gICAgR2xvd1RvdXJBZHZhbmNlVHJpZ2dlcixcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Z2xvdy10b3VyLXJvb3QgW3RvdXJdPVwidG91clwiIFtpZFByZWZpeF09XCJpZFByZWZpeFwiPlxuICAgICAgPGdsb3ctdG91ci1vdmVybGF5IC8+XG4gICAgICA8Z2xvdy10b3VyLXBvaW50ZXIgLz5cbiAgICAgIDxnbG93LXRvdXItcG9wb3Zlcj5cbiAgICAgICAgPGdsb3ctdG91ci1oZWFkZXIgLz5cbiAgICAgICAgPGdsb3ctdG91ci1jb250ZW50IC8+XG4gICAgICAgIDxnbG93LXRvdXItZm9vdGVyPlxuICAgICAgICAgIDxnbG93LXRvdXItY2FuY2VsLXRyaWdnZXIgLz5cbiAgICAgICAgICA8Z2xvdy10b3VyLWJhY2stdHJpZ2dlciAvPlxuICAgICAgICAgIDxnbG93LXRvdXItYWR2YW5jZS10cmlnZ2VyIC8+XG4gICAgICAgIDwvZ2xvdy10b3VyLWZvb3Rlcj5cbiAgICAgIDwvZ2xvdy10b3VyLXBvcG92ZXI+XG4gICAgPC9nbG93LXRvdXItcm9vdD5cbiAgYCxcbn0pXG4vKiogRGVmYXVsdCBHbG93VG91ci5qcyBjb21wb25lbnQgdGhhdCByZW5kZXJzIGFsbCB0b3VyIFVJIGVsZW1lbnRzIGluIGEgc3RhbmRhcmQgbGF5b3V0LiAqL1xuZXhwb3J0IGNsYXNzIEdsb3dUb3VyRGVmYXVsdCB7XG4gIC8qKiBUaGUgdG91ciBjb250cm9sbGVyIGluc3RhbmNlIHRvIGRpc3BsYXkuICovXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHRvdXIhOiBHbG93VG91cjxBbmd1bGFyVG91ckNvbnRlbnQ+O1xuICAvKiogT3B0aW9uYWwgcHJlZml4IGZvciBnZW5lcmF0ZWQgSFRNTCBJRHMuICovXG4gIEBJbnB1dCgpIGlkUHJlZml4Pzogc3RyaW5nO1xufVxuIl19
|