@useinsider/guido 2.0.0-beta.e73ba15 → 2.0.0-beta.fb0f99d
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/dist/@types/config/schemas.js +53 -39
- package/dist/components/organisms/email-preview/amp/AmpToggle.vue.js +2 -2
- package/dist/components/organisms/header/RightSlot.vue2.js +10 -10
- package/dist/composables/useConfig.js +29 -27
- package/dist/composables/useSave.js +13 -11
- package/dist/extensions/Blocks/Recommendation/constants/layout.js +9 -4
- package/dist/extensions/Blocks/Recommendation/controls/cardBackground/index.js +21 -41
- package/dist/extensions/Blocks/Recommendation/controls/cardComposition/index.js +37 -48
- package/dist/extensions/Blocks/Recommendation/controls/main/index.js +78 -50
- package/dist/extensions/Blocks/Recommendation/controls/main/utils.js +72 -70
- package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textAfter.js +1 -1
- package/dist/extensions/Blocks/Recommendation/controls/omnibusDiscount/textBefore.js +3 -3
- package/dist/extensions/Blocks/Recommendation/controls/spacing/index.js +60 -80
- package/dist/extensions/Blocks/Recommendation/store/recommendation.js +16 -14
- package/dist/extensions/Blocks/Recommendation/utils/preserveTextStyles.js +27 -16
- package/dist/extensions/Blocks/Recommendation/utils/tagName.js +46 -0
- package/dist/extensions/Blocks/Unsubscribe/extension.js +9 -9
- package/dist/extensions/Blocks/common-control.js +6 -7
- package/dist/guido.css +1 -1
- package/dist/src/@types/config/index.d.ts +2 -2
- package/dist/src/@types/config/schemas.d.ts +26 -0
- package/dist/src/@types/config/types.d.ts +7 -1
- package/dist/src/composables/useConfig.d.ts +6 -0
- package/dist/src/extensions/Blocks/Recommendation/constants/index.d.ts +1 -1
- package/dist/src/extensions/Blocks/Recommendation/constants/layout.d.ts +10 -0
- package/dist/src/extensions/Blocks/Recommendation/controls/cardBackground/index.d.ts +0 -10
- package/dist/src/extensions/Blocks/Recommendation/controls/main/index.d.ts +6 -17
- package/dist/src/extensions/Blocks/Recommendation/controls/spacing/index.d.ts +0 -5
- package/dist/src/extensions/Blocks/Recommendation/store/recommendation.d.ts +1 -0
- package/dist/src/extensions/Blocks/Recommendation/utils/tagName.d.ts +77 -0
- package/dist/src/extensions/Blocks/common-control.d.ts +1 -1
- package/dist/src/stores/config.d.ts +147 -1
- package/dist/static/styles/components/button.css.js +1 -1
- package/dist/stores/config.js +7 -0
- package/package.json +1 -1
|
@@ -15,3 +15,13 @@ export declare const MIN_PRODUCT_COUNT = 1;
|
|
|
15
15
|
export declare const MAX_PRODUCTS_PER_ROW = 4;
|
|
16
16
|
/** Minimum number of products per row in vertical layout */
|
|
17
17
|
export declare const MIN_PRODUCTS_PER_ROW = 1;
|
|
18
|
+
/** Default column spacing between product cards (5px on each side = 10px total) */
|
|
19
|
+
export declare const DEFAULT_COLUMN_SPACING = 10;
|
|
20
|
+
/** Default row spacing between product rows */
|
|
21
|
+
export declare const DEFAULT_ROW_SPACING = 20;
|
|
22
|
+
/** Minimum spacing value */
|
|
23
|
+
export declare const MIN_SPACING = 0;
|
|
24
|
+
/** Maximum spacing value */
|
|
25
|
+
export declare const MAX_SPACING = 50;
|
|
26
|
+
/** Spacing adjustment step */
|
|
27
|
+
export declare const SPACING_STEP = 5;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Orientation } from '@@/Types/recommendation';
|
|
2
1
|
import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
|
|
3
2
|
import { CommonControl } from '../../../common-control';
|
|
4
3
|
export declare const CARD_BACKGROUND_COLOR_CONTROL_ID = "recommendation-card-background-color-control";
|
|
@@ -12,15 +11,6 @@ export declare class CardBackgroundColorControl extends CommonControl {
|
|
|
12
11
|
onRender(): void;
|
|
13
12
|
onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
|
|
14
13
|
_setFormValues(): void;
|
|
15
|
-
/**
|
|
16
|
-
* Gets the block element - either currentNode itself or as a descendant
|
|
17
|
-
* The currentNode could BE the block element or contain it
|
|
18
|
-
*/
|
|
19
|
-
_getBlockElement(): ImmutableHtmlNode | null;
|
|
20
|
-
/**
|
|
21
|
-
* Gets the current layout orientation from the block's data attribute
|
|
22
|
-
*/
|
|
23
|
-
_getCurrentLayout(): Orientation;
|
|
24
14
|
/**
|
|
25
15
|
* Gets the appropriate selector based on layout
|
|
26
16
|
* Vertical: .product-card-segment (inner table per product cell)
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Main Recommendation Block Control
|
|
3
|
-
*
|
|
4
|
-
* This is a coordinator control that composes all recommendation configuration
|
|
5
|
-
* sub-controls into a single settings panel. It handles:
|
|
6
|
-
* - Initial API data fetching
|
|
7
|
-
* - Store subscriptions for product refresh
|
|
8
|
-
* - Coordinating lifecycle of sub-controls
|
|
9
|
-
*
|
|
10
|
-
* Sub-controls are also exported individually for flexibility:
|
|
11
|
-
* - AlgorithmControl: Strategy and product IDs
|
|
12
|
-
* - LocaleControl: Language selection
|
|
13
|
-
* - CurrencyControl: Currency formatting settings
|
|
14
|
-
* - ProductLayoutControl: Product count and grid layout
|
|
15
|
-
* - FiltersControl: Filter selection
|
|
16
|
-
* - ShuffleControl: Product shuffle toggle
|
|
17
|
-
*/
|
|
18
1
|
import { CommonControl } from '../../../common-control';
|
|
19
2
|
import { AlgorithmControl, ALGORITHM_CONTROL_ID } from './algorithm';
|
|
20
3
|
import { CurrencyControl, CURRENCY_CONTROL_ID } from './currency';
|
|
@@ -47,8 +30,14 @@ export declare class RecommendationBlockControl extends CommonControl {
|
|
|
47
30
|
* Each sub-control manages its own form values and event listeners
|
|
48
31
|
*/
|
|
49
32
|
_initializeSubControls(): void;
|
|
33
|
+
/**
|
|
34
|
+
* Debounced product fetch to prevent rapid API calls during config changes
|
|
35
|
+
*/
|
|
36
|
+
private _debouncedFetchProducts;
|
|
50
37
|
/**
|
|
51
38
|
* Listen to store changes that require product refresh
|
|
39
|
+
* Only triggers for meaningful config changes (size, strategy, filters, etc.)
|
|
40
|
+
* Uses debounce to prevent rapid API calls
|
|
52
41
|
*/
|
|
53
42
|
_listenStateUpdates(): void;
|
|
54
43
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Orientation } from '@@/Types/recommendation';
|
|
2
1
|
import { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
|
|
3
2
|
import { CommonControl } from '../../../common-control';
|
|
4
3
|
export declare const SPACING_CONTROL_ID = "recommendation-spacing-control";
|
|
@@ -14,10 +13,6 @@ export declare class SpacingControl extends CommonControl {
|
|
|
14
13
|
getTemplate(): string;
|
|
15
14
|
onRender(): void;
|
|
16
15
|
onTemplateNodeUpdated(node: ImmutableHtmlNode): void;
|
|
17
|
-
/**
|
|
18
|
-
* Gets the current layout orientation from the block's data attribute
|
|
19
|
-
*/
|
|
20
|
-
_getCurrentLayout(): Orientation;
|
|
21
16
|
/**
|
|
22
17
|
* Updates column spacing visibility based on layout orientation
|
|
23
18
|
* Column spacing is hidden for horizontal layout (products are stacked vertically)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Orientation, Languages, Currency, NumericSeparator, FiltersResponse, Filter, RecommendationProduct } from '@@/Types/recommendation';
|
|
2
2
|
interface StoreState {
|
|
3
|
+
/** Maps campaign URLs for recommendation blocks. Used by templateLibraryApi when saving templates. */
|
|
3
4
|
recommendationCampaignUrls: Record<string, string>;
|
|
4
5
|
recommendationConfigs: {
|
|
5
6
|
cardsInRow: number;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node Type Guards and Tag Name Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides type-safe utilities for working with ImmutableHtmlNode.
|
|
5
|
+
* Handles both standard DOM properties and Stripo's custom methods.
|
|
6
|
+
*/
|
|
7
|
+
import type { ImmutableHtmlNode } from '@stripoinc/ui-editor-extensions';
|
|
8
|
+
/** Interface for nodes with standard tagName property */
|
|
9
|
+
interface NodeWithTagName {
|
|
10
|
+
tagName: string;
|
|
11
|
+
}
|
|
12
|
+
/** Interface for nodes with getStyle method */
|
|
13
|
+
export interface NodeWithGetStyle {
|
|
14
|
+
getStyle: (property: string) => string | null | undefined;
|
|
15
|
+
}
|
|
16
|
+
/** Interface for nodes with parent method */
|
|
17
|
+
export interface NodeWithParent {
|
|
18
|
+
parent: () => ImmutableHtmlNode | null;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Type guard to check if a node has getStyle method
|
|
22
|
+
* @param node - The node to check
|
|
23
|
+
*/
|
|
24
|
+
export declare function hasGetStyle(node: unknown): node is NodeWithGetStyle;
|
|
25
|
+
/**
|
|
26
|
+
* Type guard to check if a node has parent method
|
|
27
|
+
* @param node - The node to check
|
|
28
|
+
*/
|
|
29
|
+
export declare function hasParent(node: unknown): node is NodeWithParent;
|
|
30
|
+
/**
|
|
31
|
+
* Type guard to check if a node is a TD element
|
|
32
|
+
* @param node - The node to check
|
|
33
|
+
*/
|
|
34
|
+
export declare function isTdNode(node: unknown): node is ImmutableHtmlNode & NodeWithTagName;
|
|
35
|
+
/**
|
|
36
|
+
* Safely retrieves a style value from a node
|
|
37
|
+
* @param node - The node to get the style from
|
|
38
|
+
* @param property - The CSS property name
|
|
39
|
+
* @returns The style value or null if not accessible
|
|
40
|
+
*/
|
|
41
|
+
export declare function safeGetStyle(node: ImmutableHtmlNode | null, property: string): string | null | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Safely retrieves the parent element of a node
|
|
44
|
+
* @param node - The node to get the parent from
|
|
45
|
+
* @returns The parent node or null if not accessible
|
|
46
|
+
*/
|
|
47
|
+
export declare function safeGetParent(node: ImmutableHtmlNode | null): ImmutableHtmlNode | null;
|
|
48
|
+
/**
|
|
49
|
+
* Safely retrieves the tag name from a node.
|
|
50
|
+
* Handles both standard DOM tagName property and Stripo's getTagName() method.
|
|
51
|
+
* @param node - The node to get the tag name from
|
|
52
|
+
* @param defaultValue - Default value if tag name cannot be determined (default: 'UNKNOWN')
|
|
53
|
+
* @returns The uppercase tag name
|
|
54
|
+
*/
|
|
55
|
+
export declare function getTagName(node: ImmutableHtmlNode | null | undefined, defaultValue?: string): string;
|
|
56
|
+
/**
|
|
57
|
+
* Checks if a tag name represents a table cell element.
|
|
58
|
+
* Includes standard TD and Stripo's custom block types (BLOCK_IMAGE, BLOCK_BUTTON).
|
|
59
|
+
* @param tagName - The tag name to check (case-insensitive)
|
|
60
|
+
* @returns True if the tag represents a table cell
|
|
61
|
+
*/
|
|
62
|
+
export declare function isTableCellTag(tagName: string): boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Checks if a node is a table cell element.
|
|
65
|
+
* Combines getTagName and isTableCellTag for convenience.
|
|
66
|
+
* @param node - The node to check
|
|
67
|
+
* @returns True if the node is a table cell element
|
|
68
|
+
*/
|
|
69
|
+
export declare function isTableCellNode(node: ImmutableHtmlNode | null | undefined): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Gets the appropriate CSS display value for showing a table element.
|
|
72
|
+
* Table cells use 'table-cell', table rows use 'table-row'.
|
|
73
|
+
* @param node - The table element node
|
|
74
|
+
* @returns The CSS display value ('table-cell' or 'table-row')
|
|
75
|
+
*/
|
|
76
|
+
export declare function getTableDisplayValue(node: ImmutableHtmlNode | null | undefined): 'table-cell' | 'table-row';
|
|
77
|
+
export {};
|
|
@@ -75,7 +75,7 @@ export declare abstract class CommonControl extends Control {
|
|
|
75
75
|
* @returns true if block instance changed, false otherwise
|
|
76
76
|
*/
|
|
77
77
|
protected handleBlockInstanceChange(syncFunction: (node: ImmutableHtmlNode) => void, updateUI: () => void, blockInstanceIdAttribute?: string): boolean;
|
|
78
|
-
_GuLabel({ text, name
|
|
78
|
+
_GuLabel({ text, name }: LabelProps): string;
|
|
79
79
|
_GuToggle(name: string): string;
|
|
80
80
|
_GuSelectItem({ text, value }: {
|
|
81
81
|
text: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GuidoConfig, GuidoConfigInput, IdentityConfig, PartnerConfig, TemplateConfig, EditorConfig, UIConfig, FeaturesConfig, BlocksConfig, CompilerConfig } from '@@/Types/config';
|
|
1
|
+
import type { GuidoConfig, GuidoConfigInput, IdentityConfig, PartnerConfig, TemplateConfig, EditorConfig, UIConfig, FeaturesConfig, BlocksConfig, CompilerConfig, CallbacksConfig } from '@@/Types/config';
|
|
2
2
|
interface ConfigStoreState {
|
|
3
3
|
/** Whether the config has been initialized */
|
|
4
4
|
initialized: boolean;
|
|
@@ -96,6 +96,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
96
96
|
})[];
|
|
97
97
|
ignoreDefaultRules: boolean;
|
|
98
98
|
};
|
|
99
|
+
callbacks: {
|
|
100
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
101
|
+
};
|
|
99
102
|
} | null;
|
|
100
103
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => IdentityConfig | null;
|
|
101
104
|
/**
|
|
@@ -188,6 +191,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
188
191
|
})[];
|
|
189
192
|
ignoreDefaultRules: boolean;
|
|
190
193
|
};
|
|
194
|
+
callbacks: {
|
|
195
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
196
|
+
};
|
|
191
197
|
} | null;
|
|
192
198
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => PartnerConfig | null;
|
|
193
199
|
/**
|
|
@@ -280,6 +286,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
280
286
|
})[];
|
|
281
287
|
ignoreDefaultRules: boolean;
|
|
282
288
|
};
|
|
289
|
+
callbacks: {
|
|
290
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
291
|
+
};
|
|
283
292
|
} | null;
|
|
284
293
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => TemplateConfig | null;
|
|
285
294
|
/**
|
|
@@ -372,6 +381,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
372
381
|
})[];
|
|
373
382
|
ignoreDefaultRules: boolean;
|
|
374
383
|
};
|
|
384
|
+
callbacks: {
|
|
385
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
386
|
+
};
|
|
375
387
|
} | null;
|
|
376
388
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => EditorConfig | null;
|
|
377
389
|
/**
|
|
@@ -464,6 +476,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
464
476
|
})[];
|
|
465
477
|
ignoreDefaultRules: boolean;
|
|
466
478
|
};
|
|
479
|
+
callbacks: {
|
|
480
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
481
|
+
};
|
|
467
482
|
} | null;
|
|
468
483
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => UIConfig | null;
|
|
469
484
|
/**
|
|
@@ -556,6 +571,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
556
571
|
})[];
|
|
557
572
|
ignoreDefaultRules: boolean;
|
|
558
573
|
};
|
|
574
|
+
callbacks: {
|
|
575
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
576
|
+
};
|
|
559
577
|
} | null;
|
|
560
578
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => FeaturesConfig | null;
|
|
561
579
|
/**
|
|
@@ -648,6 +666,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
648
666
|
})[];
|
|
649
667
|
ignoreDefaultRules: boolean;
|
|
650
668
|
};
|
|
669
|
+
callbacks: {
|
|
670
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
671
|
+
};
|
|
651
672
|
} | null;
|
|
652
673
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => BlocksConfig | null;
|
|
653
674
|
/**
|
|
@@ -740,8 +761,106 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
740
761
|
})[];
|
|
741
762
|
ignoreDefaultRules: boolean;
|
|
742
763
|
};
|
|
764
|
+
callbacks: {
|
|
765
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
766
|
+
};
|
|
743
767
|
} | null;
|
|
744
768
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => CompilerConfig | null;
|
|
769
|
+
/**
|
|
770
|
+
* Get the callbacks configuration
|
|
771
|
+
*/
|
|
772
|
+
callbacks: (state: {
|
|
773
|
+
initialized: boolean;
|
|
774
|
+
config: {
|
|
775
|
+
identity: {
|
|
776
|
+
templateId: string;
|
|
777
|
+
userId: string;
|
|
778
|
+
variationId?: string | undefined;
|
|
779
|
+
};
|
|
780
|
+
partner: {
|
|
781
|
+
name: string;
|
|
782
|
+
productType: 60 | 49 | 97;
|
|
783
|
+
messageType: 1 | 2;
|
|
784
|
+
username: string;
|
|
785
|
+
};
|
|
786
|
+
template: {
|
|
787
|
+
html: string;
|
|
788
|
+
css: string;
|
|
789
|
+
preselectedDynamicContent: {
|
|
790
|
+
text: string;
|
|
791
|
+
value: string;
|
|
792
|
+
fallback?: string | undefined;
|
|
793
|
+
format?: {
|
|
794
|
+
key: string;
|
|
795
|
+
value: string;
|
|
796
|
+
} | undefined;
|
|
797
|
+
}[];
|
|
798
|
+
selectedUnsubscribePages: number[];
|
|
799
|
+
forceRecreate: boolean;
|
|
800
|
+
};
|
|
801
|
+
editor: {
|
|
802
|
+
locale: string;
|
|
803
|
+
translationsPath: string;
|
|
804
|
+
migrationDate: number;
|
|
805
|
+
emailHeader: {
|
|
806
|
+
senderName: string;
|
|
807
|
+
subject: string;
|
|
808
|
+
};
|
|
809
|
+
};
|
|
810
|
+
ui: {
|
|
811
|
+
showHeader: boolean;
|
|
812
|
+
backButtonLabel?: string | undefined;
|
|
813
|
+
};
|
|
814
|
+
features: {
|
|
815
|
+
dynamicContent: boolean;
|
|
816
|
+
saveAsTemplate: boolean;
|
|
817
|
+
versionHistory: boolean;
|
|
818
|
+
testMessage: boolean;
|
|
819
|
+
displayConditions: boolean;
|
|
820
|
+
unsubscribe: boolean;
|
|
821
|
+
modulesDisabled: boolean;
|
|
822
|
+
};
|
|
823
|
+
blocks: {
|
|
824
|
+
excludeDefaults: ("amp-accordion" | "amp-carousel" | "amp-form-controls" | "banner-block" | "button-block" | "html-block" | "image-block" | "menu-block" | "social-block" | "spacer-block" | "text-block" | "timer-block" | "video-block")[];
|
|
825
|
+
includeCustoms: ("dynamic-content" | "checkbox-block" | "radio-button-block" | "recommendation-block" | "unsubscribe-block" | "coupon-block" | "items-block")[];
|
|
826
|
+
};
|
|
827
|
+
compiler: {
|
|
828
|
+
customRules: ({
|
|
829
|
+
type: "replace";
|
|
830
|
+
search: string;
|
|
831
|
+
replacement: string;
|
|
832
|
+
replaceAll?: boolean | undefined;
|
|
833
|
+
id: string;
|
|
834
|
+
description?: string | undefined;
|
|
835
|
+
priority: number;
|
|
836
|
+
} | {
|
|
837
|
+
type: "regex";
|
|
838
|
+
pattern: string;
|
|
839
|
+
replacement: string;
|
|
840
|
+
flags?: string | undefined;
|
|
841
|
+
id: string;
|
|
842
|
+
description?: string | undefined;
|
|
843
|
+
priority: number;
|
|
844
|
+
} | {
|
|
845
|
+
type: "remove";
|
|
846
|
+
targets: string[];
|
|
847
|
+
id: string;
|
|
848
|
+
description?: string | undefined;
|
|
849
|
+
priority: number;
|
|
850
|
+
} | {
|
|
851
|
+
type: "custom";
|
|
852
|
+
processor: (html: string) => string;
|
|
853
|
+
id: string;
|
|
854
|
+
description?: string | undefined;
|
|
855
|
+
priority: number;
|
|
856
|
+
})[];
|
|
857
|
+
ignoreDefaultRules: boolean;
|
|
858
|
+
};
|
|
859
|
+
callbacks: {
|
|
860
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
861
|
+
};
|
|
862
|
+
} | null;
|
|
863
|
+
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => CallbacksConfig | null;
|
|
745
864
|
/**
|
|
746
865
|
* Get the template ID
|
|
747
866
|
*/
|
|
@@ -832,6 +951,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
832
951
|
})[];
|
|
833
952
|
ignoreDefaultRules: boolean;
|
|
834
953
|
};
|
|
954
|
+
callbacks: {
|
|
955
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
956
|
+
};
|
|
835
957
|
} | null;
|
|
836
958
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
|
|
837
959
|
/**
|
|
@@ -924,6 +1046,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
924
1046
|
})[];
|
|
925
1047
|
ignoreDefaultRules: boolean;
|
|
926
1048
|
};
|
|
1049
|
+
callbacks: {
|
|
1050
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1051
|
+
};
|
|
927
1052
|
} | null;
|
|
928
1053
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
|
|
929
1054
|
/**
|
|
@@ -1016,6 +1141,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1016
1141
|
})[];
|
|
1017
1142
|
ignoreDefaultRules: boolean;
|
|
1018
1143
|
};
|
|
1144
|
+
callbacks: {
|
|
1145
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1146
|
+
};
|
|
1019
1147
|
} | null;
|
|
1020
1148
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
|
|
1021
1149
|
/**
|
|
@@ -1108,6 +1236,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1108
1236
|
})[];
|
|
1109
1237
|
ignoreDefaultRules: boolean;
|
|
1110
1238
|
};
|
|
1239
|
+
callbacks: {
|
|
1240
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1241
|
+
};
|
|
1111
1242
|
} | null;
|
|
1112
1243
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
|
|
1113
1244
|
/**
|
|
@@ -1200,6 +1331,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1200
1331
|
})[];
|
|
1201
1332
|
ignoreDefaultRules: boolean;
|
|
1202
1333
|
};
|
|
1334
|
+
callbacks: {
|
|
1335
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1336
|
+
};
|
|
1203
1337
|
} | null;
|
|
1204
1338
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => number;
|
|
1205
1339
|
/**
|
|
@@ -1292,6 +1426,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1292
1426
|
})[];
|
|
1293
1427
|
ignoreDefaultRules: boolean;
|
|
1294
1428
|
};
|
|
1429
|
+
callbacks: {
|
|
1430
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1431
|
+
};
|
|
1295
1432
|
} | null;
|
|
1296
1433
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => number;
|
|
1297
1434
|
/**
|
|
@@ -1384,6 +1521,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1384
1521
|
})[];
|
|
1385
1522
|
ignoreDefaultRules: boolean;
|
|
1386
1523
|
};
|
|
1524
|
+
callbacks: {
|
|
1525
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1526
|
+
};
|
|
1387
1527
|
} | null;
|
|
1388
1528
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => string;
|
|
1389
1529
|
/**
|
|
@@ -1476,6 +1616,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1476
1616
|
})[];
|
|
1477
1617
|
ignoreDefaultRules: boolean;
|
|
1478
1618
|
};
|
|
1619
|
+
callbacks: {
|
|
1620
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1621
|
+
};
|
|
1479
1622
|
} | null;
|
|
1480
1623
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => boolean;
|
|
1481
1624
|
/**
|
|
@@ -1568,6 +1711,9 @@ export declare const useConfigStore: import("pinia").StoreDefinition<"guido-conf
|
|
|
1568
1711
|
})[];
|
|
1569
1712
|
ignoreDefaultRules: boolean;
|
|
1570
1713
|
};
|
|
1714
|
+
callbacks: {
|
|
1715
|
+
externalValidation?: import("@@/Types/config").ExternalValidationHandler | undefined;
|
|
1716
|
+
};
|
|
1571
1717
|
} | null;
|
|
1572
1718
|
} & import("pinia").PiniaCustomStateProperties<ConfigStoreState>) => (feature: keyof FeaturesConfig) => boolean;
|
|
1573
1719
|
}, {
|
package/dist/stores/config.js
CHANGED
|
@@ -64,6 +64,13 @@ const s = o("guido-config", {
|
|
|
64
64
|
var e;
|
|
65
65
|
return ((e = i.config) == null ? void 0 : e.compiler) ?? null;
|
|
66
66
|
},
|
|
67
|
+
/**
|
|
68
|
+
* Get the callbacks configuration
|
|
69
|
+
*/
|
|
70
|
+
callbacks: (i) => {
|
|
71
|
+
var e;
|
|
72
|
+
return ((e = i.config) == null ? void 0 : e.callbacks) ?? null;
|
|
73
|
+
},
|
|
67
74
|
/**
|
|
68
75
|
* Get the template ID
|
|
69
76
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@useinsider/guido",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.fb0f99d",
|
|
4
4
|
"description": "Guido is a Vue + TypeScript wrapper for Email Plugin. Easily embed the email editor in your Vue applications.",
|
|
5
5
|
"main": "./dist/guido.umd.cjs",
|
|
6
6
|
"module": "./dist/library.js",
|