@magicfeedback/native 2.1.7-alpha.8 → 2.2.0-alpha.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/dist/magicfeedback-sdk.browser.js +509 -1
- package/dist/magicfeedback-sdk.node.js +470 -1
- package/dist/styles/magicfeedback-default.css +235 -149
- package/dist/types/src/models/pageGraphs.d.ts +52 -0
- package/dist/types/src/models/types.d.ts +88 -3
- package/dist/types/src/render/helpers.d.ts +3 -0
- package/dist/types/src/render/ratingHelpers.d.ts +3 -0
- package/dist/types/src/render/registry.d.ts +3 -0
- package/dist/types/src/render/renderBoolean.d.ts +2 -0
- package/dist/types/src/render/renderChoice.d.ts +2 -0
- package/dist/types/src/render/renderConsent.d.ts +2 -0
- package/dist/types/src/render/renderDate.d.ts +2 -0
- package/dist/types/src/render/renderEmail.d.ts +2 -0
- package/dist/types/src/render/renderInfoPage.d.ts +2 -0
- package/dist/types/src/render/renderLongText.d.ts +2 -0
- package/dist/types/src/render/renderMatrix.d.ts +2 -0
- package/dist/types/src/render/renderMultipleChoiceImage.d.ts +2 -0
- package/dist/types/src/render/renderNumber.d.ts +2 -0
- package/dist/types/src/render/renderPassword.d.ts +2 -0
- package/dist/types/src/render/renderPointSystem.d.ts +2 -0
- package/dist/types/src/render/renderPriorityList.d.ts +2 -0
- package/dist/types/src/render/renderRatingEmoji.d.ts +2 -0
- package/dist/types/src/render/renderRatingNumber.d.ts +2 -0
- package/dist/types/src/render/renderRatingStar.d.ts +2 -0
- package/dist/types/src/render/renderSelect.d.ts +2 -0
- package/dist/types/src/render/renderText.d.ts +2 -0
- package/dist/types/src/render/renderUploadFile.d.ts +2 -0
- package/dist/types/src/render/renderUploadImage.d.ts +2 -0
- package/dist/types/src/render/types.d.ts +20 -0
- package/package.json +1 -1
|
@@ -38,10 +38,95 @@ export declare enum FEEDBACKAPPANSWERTYPE {
|
|
|
38
38
|
export declare class QuestionType {
|
|
39
39
|
conf: any;
|
|
40
40
|
}
|
|
41
|
-
export type
|
|
41
|
+
export type QuestionAssetsBase = {
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
placeholder?: string;
|
|
44
|
+
subtitle?: string | Record<string, string>;
|
|
45
|
+
subtitleStyle?: string | string[];
|
|
46
|
+
maxCharacters?: number;
|
|
47
|
+
randomPosition?: boolean;
|
|
48
|
+
direction?: "row" | "column" | string;
|
|
49
|
+
order?: "ltr" | "rtl" | string;
|
|
50
|
+
min?: number;
|
|
51
|
+
max?: number;
|
|
52
|
+
minPlaceholder?: string;
|
|
53
|
+
maxPlaceholder?: string;
|
|
54
|
+
extraOption?: boolean;
|
|
55
|
+
extraOptionText?: string;
|
|
56
|
+
extraOptionPlaceholder?: string;
|
|
57
|
+
};
|
|
58
|
+
export type QuestionAssetsByType = {
|
|
59
|
+
[FEEDBACKAPPANSWERTYPE.TEXT]: QuestionAssetsBase;
|
|
60
|
+
[FEEDBACKAPPANSWERTYPE.LONGTEXT]: QuestionAssetsBase & {
|
|
61
|
+
maxCharacters?: number;
|
|
62
|
+
};
|
|
63
|
+
[FEEDBACKAPPANSWERTYPE.NUMBER]: QuestionAssetsBase;
|
|
64
|
+
[FEEDBACKAPPANSWERTYPE.RADIO]: QuestionAssetsBase & {
|
|
65
|
+
exclusiveAnswers?: string[];
|
|
66
|
+
maxOptions?: number;
|
|
67
|
+
extraOption?: boolean;
|
|
68
|
+
extraOptionText?: string;
|
|
69
|
+
extraOptionPlaceholder?: string;
|
|
70
|
+
};
|
|
71
|
+
[FEEDBACKAPPANSWERTYPE.MULTIPLECHOICE]: QuestionAssetsByType[FEEDBACKAPPANSWERTYPE.RADIO];
|
|
72
|
+
[FEEDBACKAPPANSWERTYPE.SELECT]: QuestionAssetsBase;
|
|
73
|
+
[FEEDBACKAPPANSWERTYPE.DATE]: QuestionAssetsBase;
|
|
74
|
+
[FEEDBACKAPPANSWERTYPE.EMAIL]: QuestionAssetsBase;
|
|
75
|
+
[FEEDBACKAPPANSWERTYPE.PASSWORD]: QuestionAssetsBase;
|
|
76
|
+
[FEEDBACKAPPANSWERTYPE.BOOLEAN]: QuestionAssetsBase & {
|
|
77
|
+
addIcon?: boolean;
|
|
78
|
+
};
|
|
79
|
+
[FEEDBACKAPPANSWERTYPE.CONSENT]: QuestionAssetsBase;
|
|
80
|
+
[FEEDBACKAPPANSWERTYPE.RATING_EMOJI]: QuestionAssetsBase & {
|
|
81
|
+
min?: number;
|
|
82
|
+
max?: number;
|
|
83
|
+
minPlaceholder?: string;
|
|
84
|
+
maxPlaceholder?: string;
|
|
85
|
+
extraOption?: boolean;
|
|
86
|
+
extraOptionText?: string;
|
|
87
|
+
};
|
|
88
|
+
[FEEDBACKAPPANSWERTYPE.RATING_NUMBER]: QuestionAssetsBase & {
|
|
89
|
+
min?: number;
|
|
90
|
+
max?: number;
|
|
91
|
+
minPlaceholder?: string;
|
|
92
|
+
maxPlaceholder?: string;
|
|
93
|
+
numberPlaceholders?: Record<number, string>;
|
|
94
|
+
extraOption?: boolean;
|
|
95
|
+
extraOptionText?: string;
|
|
96
|
+
ariaLabel?: string;
|
|
97
|
+
};
|
|
98
|
+
[FEEDBACKAPPANSWERTYPE.RATING_STAR]: QuestionAssetsBase & {
|
|
99
|
+
minPlaceholder?: string;
|
|
100
|
+
maxPlaceholder?: string;
|
|
101
|
+
};
|
|
102
|
+
[FEEDBACKAPPANSWERTYPE.MULTIPLECHOISE_IMAGE]: QuestionAssetsBase & {
|
|
103
|
+
addTitle?: boolean;
|
|
104
|
+
multiOption?: boolean;
|
|
105
|
+
extraOption?: boolean;
|
|
106
|
+
extraOptionValue?: any[];
|
|
107
|
+
};
|
|
108
|
+
[FEEDBACKAPPANSWERTYPE.MULTI_QUESTION_MATRIX]: QuestionAssetsBase & {
|
|
109
|
+
options?: string[];
|
|
110
|
+
exclusiveAnswers?: string[];
|
|
111
|
+
};
|
|
112
|
+
[FEEDBACKAPPANSWERTYPE.PRIORITY_LIST]: QuestionAssetsBase & {
|
|
113
|
+
limitPriority?: boolean;
|
|
114
|
+
maxPriority?: number;
|
|
115
|
+
};
|
|
116
|
+
[FEEDBACKAPPANSWERTYPE.POINT_SYSTEM]: QuestionAssetsBase;
|
|
117
|
+
[FEEDBACKAPPANSWERTYPE.INFO_PAGE]: QuestionAssetsBase;
|
|
118
|
+
[FEEDBACKAPPANSWERTYPE.UPLOAD_FILE]: QuestionAssetsBase & {
|
|
119
|
+
multiple?: boolean;
|
|
120
|
+
maxFiles?: number;
|
|
121
|
+
};
|
|
122
|
+
[FEEDBACKAPPANSWERTYPE.UPLOAD_IMAGE]: QuestionAssetsByType[FEEDBACKAPPANSWERTYPE.UPLOAD_FILE];
|
|
123
|
+
[FEEDBACKAPPANSWERTYPE.CONTACT]: QuestionAssetsBase;
|
|
124
|
+
};
|
|
125
|
+
export type QuestionAssetsFor<T extends FEEDBACKAPPANSWERTYPE | string> = T extends FEEDBACKAPPANSWERTYPE ? QuestionAssetsByType[T] & QuestionAssetsBase : QuestionAssetsBase;
|
|
126
|
+
export type NativeQuestion<T extends FEEDBACKAPPANSWERTYPE | string = FEEDBACKAPPANSWERTYPE | string> = {
|
|
42
127
|
id: string;
|
|
43
128
|
title: string;
|
|
44
|
-
type:
|
|
129
|
+
type: T;
|
|
45
130
|
questionType: QuestionType;
|
|
46
131
|
ref: string;
|
|
47
132
|
require: boolean;
|
|
@@ -51,7 +136,7 @@ export type NativeQuestion = {
|
|
|
51
136
|
appId?: string;
|
|
52
137
|
followup: boolean;
|
|
53
138
|
position: number;
|
|
54
|
-
assets:
|
|
139
|
+
assets: QuestionAssetsFor<T>;
|
|
55
140
|
refMetric: string;
|
|
56
141
|
integrationId: string;
|
|
57
142
|
integrationPageId: string;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare function createRatingPlaceholder(min: number, max: number, minPlaceholder: string, maxPlaceholder: string, extraOption: boolean, mobile?: boolean, order?: string, direction?: string): HTMLDivElement;
|
|
2
|
+
export declare function createStarRating(ref: string, minPlaceholder: string, maxPlaceholder: string, send?: () => void, urlParamValue?: string | null): HTMLDivElement;
|
|
3
|
+
export declare function createRatingNumberElement(ref: string, assets: any, order: string, direction: string, isPhone: boolean, elementTypeClass: string, send?: () => void, urlParamValue?: string | null): HTMLElement;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NativeQuestion } from "../models/types";
|
|
2
|
+
export type RenderContext = {
|
|
3
|
+
question: NativeQuestion;
|
|
4
|
+
format: string;
|
|
5
|
+
language: string;
|
|
6
|
+
url: string;
|
|
7
|
+
send?: () => void;
|
|
8
|
+
isPhone: boolean;
|
|
9
|
+
urlParamValue: string | null;
|
|
10
|
+
placeholderText?: string;
|
|
11
|
+
maxCharacters: number;
|
|
12
|
+
randomPosition: boolean;
|
|
13
|
+
direction: string;
|
|
14
|
+
order: string;
|
|
15
|
+
};
|
|
16
|
+
export type RenderResult = {
|
|
17
|
+
element: HTMLElement;
|
|
18
|
+
elementTypeClass: string;
|
|
19
|
+
};
|
|
20
|
+
export type QuestionRenderer = (ctx: RenderContext) => RenderResult;
|