@sanity/personalization-plugin 2.5.0-launch-darkly.1 → 3.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.
Files changed (48) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +640 -109
  3. package/dist/growthbook/index.d.ts +12 -15
  4. package/dist/growthbook/index.d.ts.map +1 -0
  5. package/dist/growthbook/index.js +104 -68
  6. package/dist/growthbook/index.js.map +1 -1
  7. package/dist/index.d.ts +212 -252
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +417 -7195
  10. package/dist/index.js.map +1 -1
  11. package/dist/launchDarkly/index.d.ts +9 -12
  12. package/dist/launchDarkly/index.d.ts.map +1 -0
  13. package/dist/launchDarkly/index.js +74 -46
  14. package/dist/launchDarkly/index.js.map +1 -1
  15. package/package.json +36 -78
  16. package/dist/growthbook/index.d.mts +0 -15
  17. package/dist/growthbook/index.mjs +0 -124
  18. package/dist/growthbook/index.mjs.map +0 -1
  19. package/dist/index.d.mts +0 -267
  20. package/dist/index.mjs +0 -7347
  21. package/dist/index.mjs.map +0 -1
  22. package/dist/launchDarkly/index.d.mts +0 -12
  23. package/dist/launchDarkly/index.mjs +0 -107
  24. package/dist/launchDarkly/index.mjs.map +0 -1
  25. package/sanity.json +0 -8
  26. package/src/components/Array.tsx +0 -68
  27. package/src/components/ExperimentContext.tsx +0 -65
  28. package/src/components/ExperimentField.tsx +0 -138
  29. package/src/components/ExperimentInput.tsx +0 -75
  30. package/src/components/Select.tsx +0 -43
  31. package/src/components/VariantInput.tsx +0 -18
  32. package/src/components/VariantPreview.tsx +0 -75
  33. package/src/fieldExperiments.tsx +0 -264
  34. package/src/growthbook/Components/GrowthbookContext.tsx +0 -38
  35. package/src/growthbook/Components/Secrets.tsx +0 -47
  36. package/src/growthbook/index.ts +0 -54
  37. package/src/growthbook/types.ts +0 -15
  38. package/src/growthbook/utils.ts +0 -94
  39. package/src/index.ts +0 -3
  40. package/src/launchDarkly/components/LaunchDarklyContext.tsx +0 -36
  41. package/src/launchDarkly/components/Secrets.tsx +0 -46
  42. package/src/launchDarkly/index.ts +0 -52
  43. package/src/launchDarkly/launchdarkly.md +0 -76
  44. package/src/launchDarkly/types.ts +0 -193
  45. package/src/launchDarkly/utils.ts +0 -54
  46. package/src/types.ts +0 -245
  47. package/src/utils/flattenSchemaType.ts +0 -47
  48. package/v2-incompatible.js +0 -11
package/dist/index.d.ts CHANGED
@@ -1,267 +1,227 @@
1
- import {ArrayOfObjectsInputProps} from 'sanity'
2
- import {FieldDefinition} from 'sanity'
3
- import {ObjectField} from 'sanity'
4
- import {Path} from 'sanity'
5
- import {Plugin as Plugin_2} from 'sanity'
6
- import {PreviewProps} from 'sanity'
7
- import {SanityClient} from 'sanity'
8
- import {SchemaType} from 'sanity'
9
-
10
- export declare type ArrayInputProps = ArrayOfObjectsInputProps & {
11
- variantName: string
12
- variantId: string
13
- experimentId: string
14
- }
15
-
16
- export declare type ExperimentContextProps = Required<FieldPluginConfig> & {
17
- experiments: ExperimentType[]
18
- }
19
-
20
- export declare type ExperimentGeneric<T> = {
21
- _type: string
22
- default?: T
23
- experimentValue?: string
24
- [key: string]:
25
- | Array<
26
- {
27
- _key: string
28
- } & VariantGeneric<T>
29
- >
30
- | string
31
- | T
32
- | undefined
33
- }
34
-
35
- export declare type ExperimentType = {
36
- id: string
37
- label: string
38
- variants: VariantType[]
39
- }
40
-
41
- export declare const fieldLevelExperiments: Plugin_2<FieldPluginConfig>
42
-
43
- export declare type FieldPluginConfig = {
44
- fields: (string | FieldDefinition)[]
45
- experiments: ExperimentType[] | ((client: SanityClient) => Promise<ExperimentType[]>)
46
- apiVersion?: string
47
- experimentNameOverride?: string
48
- variantNameOverride?: string
49
- variantId?: string
50
- variantArrayName?: string
51
- experimentId?: string
52
- }
53
-
54
- /**
55
- * Flattens a document's schema type into a flat array of fields and includes their path
56
- */
57
- export declare function flattenSchemaType(schemaType: SchemaType): ObjectFieldWithPath[]
58
-
59
- export declare type GrowthbookExperiment = {
60
- id: string
61
- dateCreated: string
62
- dateUpdated: string
63
- name: string
64
- project: string
65
- hypothesis: string
66
- description: string
67
- tags: [string]
68
- owner: string
69
- archived: boolean
70
- status: string
71
- autoRefresh: boolean
72
- hashAttribute: string
73
- fallbackAttribute: string
74
- hashVersion: number
75
- disableStickyBucketing: boolean
76
- bucketVersion: number
77
- minBucketVersion: number
78
- variations: [
79
- {
80
- variationId: string
81
- key: string
82
- name: string
83
- description: string
84
- screenshots: [string]
85
- },
86
- ]
87
- phases: [
88
- {
89
- name: string
90
- dateStarted: string
91
- dateEnded: string
92
- reasonForStopping: string
93
- seed: string
94
- coverage: 0
95
- trafficSplit: [
96
- {
97
- variationId: string
98
- weight: 0
99
- },
100
- ]
101
- namespace: {
102
- namespaceId: string
103
- range: []
104
- }
105
- targetingCondition: string
106
- savedGroupTargeting: [
107
- {
108
- matchType: string
109
- savedGroups: [string]
110
- },
111
- ]
112
- },
113
- ]
1
+ import { ArrayOfObjectsInputProps, FieldDefinition, ObjectField, Path, PreviewProps, SanityClient, SchemaType } from "sanity";
2
+ type VariantType = {
3
+ id: string;
4
+ label: string;
5
+ };
6
+ type ExperimentType = {
7
+ id: string;
8
+ label: string;
9
+ variants: VariantType[];
10
+ };
11
+ type FieldPluginConfig = {
12
+ fields: (string | FieldDefinition)[];
13
+ experiments: ExperimentType[] | ((client: SanityClient) => Promise<ExperimentType[]>);
14
+ apiVersion?: string;
15
+ experimentNameOverride?: string;
16
+ variantNameOverride?: string;
17
+ variantId?: string;
18
+ variantArrayName?: string;
19
+ experimentId?: string;
20
+ };
21
+ type VariantPreviewProps = Omit<PreviewProps, 'SchemaType'> & {
22
+ [key: string]: string;
23
+ value: any;
24
+ };
25
+ type ExperimentContextProps = Required<FieldPluginConfig> & {
26
+ experiments: ExperimentType[];
27
+ };
28
+ type ArrayInputProps = ArrayOfObjectsInputProps & {
29
+ variantName: string;
30
+ variantId: string;
31
+ experimentId: string;
32
+ };
33
+ type ObjectFieldWithPath = ObjectField & {
34
+ path: Path;
35
+ };
36
+ type VariantGeneric<T> = {
37
+ [key: string]: string | T | undefined;
38
+ _type: string;
39
+ value?: T;
40
+ };
41
+ type ExperimentGeneric<T> = {
42
+ _type: string;
43
+ default?: T;
44
+ experimentValue?: string;
45
+ [key: string]: Array<{
46
+ _key: string;
47
+ } & VariantGeneric<T>> | string | T | undefined;
48
+ };
49
+ type GrowthbookExperiment = {
50
+ id: string;
51
+ dateCreated: string;
52
+ dateUpdated: string;
53
+ name: string;
54
+ project: string;
55
+ hypothesis: string;
56
+ description: string;
57
+ tags: [string];
58
+ owner: string;
59
+ archived: boolean;
60
+ status: string;
61
+ autoRefresh: boolean;
62
+ hashAttribute: string;
63
+ fallbackAttribute: string;
64
+ hashVersion: number;
65
+ disableStickyBucketing: boolean;
66
+ bucketVersion: number;
67
+ minBucketVersion: number;
68
+ variations: [{
69
+ variationId: string;
70
+ key: string;
71
+ name: string;
72
+ description: string;
73
+ screenshots: [string];
74
+ }];
75
+ phases: [{
76
+ name: string;
77
+ dateStarted: string;
78
+ dateEnded: string;
79
+ reasonForStopping: string;
80
+ seed: string;
81
+ coverage: 0;
82
+ trafficSplit: [{
83
+ variationId: string;
84
+ weight: 0;
85
+ }];
86
+ namespace: {
87
+ namespaceId: string;
88
+ range: [];
89
+ };
90
+ targetingCondition: string;
91
+ savedGroupTargeting: [{
92
+ matchType: string;
93
+ savedGroups: [string];
94
+ }];
95
+ }];
114
96
  settings: {
115
- datasourceId: string
116
- assignmentQueryId: string
117
- experimentId: string
118
- segmentId: string
119
- queryFilter: string
120
- inProgressConversions: string
121
- attributionModel: string
122
- statsEngine: string
123
- regressionAdjustmentEnabled: boolean
124
- goals: [
125
- {
126
- metricId: string
127
- overrides: {
128
- delayHours: 0
129
- windowHours: 0
130
- window: string
131
- winRiskThreshold: 0
132
- loseRiskThreshold: 0
133
- }
134
- },
135
- ]
136
- secondaryMetrics: [
137
- {
138
- metricId: string
139
- overrides: {
140
- delayHours: 0
141
- windowHours: 0
142
- window: string
143
- winRiskThreshold: 0
144
- loseRiskThreshold: 0
145
- }
146
- },
147
- ]
148
- guardrails: [
149
- {
150
- metricId: string
151
- overrides: {
152
- delayHours: 0
153
- windowHours: 0
154
- window: string
155
- winRiskThreshold: 0
156
- loseRiskThreshold: 0
157
- }
158
- },
159
- ]
97
+ datasourceId: string;
98
+ assignmentQueryId: string;
99
+ experimentId: string;
100
+ segmentId: string;
101
+ queryFilter: string;
102
+ inProgressConversions: string;
103
+ attributionModel: string;
104
+ statsEngine: string;
105
+ regressionAdjustmentEnabled: boolean;
106
+ goals: [{
107
+ metricId: string;
108
+ overrides: {
109
+ delayHours: 0;
110
+ windowHours: 0;
111
+ window: string;
112
+ winRiskThreshold: 0;
113
+ loseRiskThreshold: 0;
114
+ };
115
+ }];
116
+ secondaryMetrics: [{
117
+ metricId: string;
118
+ overrides: {
119
+ delayHours: 0;
120
+ windowHours: 0;
121
+ window: string;
122
+ winRiskThreshold: 0;
123
+ loseRiskThreshold: 0;
124
+ };
125
+ }];
126
+ guardrails: [{
127
+ metricId: string;
128
+ overrides: {
129
+ delayHours: 0;
130
+ windowHours: 0;
131
+ window: string;
132
+ winRiskThreshold: 0;
133
+ loseRiskThreshold: 0;
134
+ };
135
+ }];
160
136
  activationMetric: {
161
- metricId: string
137
+ metricId: string;
162
138
  overrides: {
163
- delayHours: 0
164
- windowHours: 0
165
- window: string
166
- winRiskThreshold: 0
167
- loseRiskThreshold: 0
168
- }
169
- }
170
- }
139
+ delayHours: 0;
140
+ windowHours: 0;
141
+ window: string;
142
+ winRiskThreshold: 0;
143
+ loseRiskThreshold: 0;
144
+ };
145
+ };
146
+ };
171
147
  resultSummary: {
172
- status: string
173
- winner: string
174
- conclusions: string
175
- releasedVariationId: string
176
- excludeFromPayload: boolean
177
- }
178
- }
179
-
180
- export declare type GrowthbookFeature = {
181
- id: string
182
- dateCreated: string
183
- dateUpdated: string
184
- archived: boolean
185
- description: string
186
- owner: string
187
- project: string
188
- valueType: string
189
- defaultValue: string
190
- tags: string[]
148
+ status: string;
149
+ winner: string;
150
+ conclusions: string;
151
+ releasedVariationId: string;
152
+ excludeFromPayload: boolean;
153
+ };
154
+ };
155
+ type GrowthbookFeature = {
156
+ id: string;
157
+ dateCreated: string;
158
+ dateUpdated: string;
159
+ archived: boolean;
160
+ description: string;
161
+ owner: string;
162
+ project: string;
163
+ valueType: string;
164
+ defaultValue: string;
165
+ tags: string[];
191
166
  environments: {
192
167
  [key: string]: {
193
- enabled: boolean
194
- defaultValue: string
168
+ enabled: boolean;
169
+ defaultValue: string;
195
170
  rules: {
196
- description: string
197
- condition: string
171
+ description: string;
172
+ condition: string;
198
173
  savedGroupTargeting: {
199
- matchType: string
200
- savedGroups: string[]
201
- }[]
202
- id: string
203
- enabled: boolean
204
- type: string
205
- value: string
174
+ matchType: string;
175
+ savedGroups: string[];
176
+ }[];
177
+ id: string;
178
+ enabled: boolean;
179
+ type: string;
180
+ value: string;
206
181
  variations: {
207
- value: string
208
- variationId: string
209
- }[]
210
- }[]
211
- definition: string
182
+ value: string;
183
+ variationId: string;
184
+ }[];
185
+ }[];
186
+ definition: string;
212
187
  draft: {
213
- enabled: boolean
214
- defaultValue: string
188
+ enabled: boolean;
189
+ defaultValue: string;
215
190
  rules: {
216
- description: string
217
- condition: string
191
+ description: string;
192
+ condition: string;
218
193
  savedGroupTargeting: {
219
- matchType: string
220
- savedGroups: string[]
221
- }[]
222
- id: string
223
- enabled: boolean
224
- type: string
225
- value: string
194
+ matchType: string;
195
+ savedGroups: string[];
196
+ }[];
197
+ id: string;
198
+ enabled: boolean;
199
+ type: string;
200
+ value: string;
226
201
  variations: {
227
- value: string
228
- variationId: string
229
- }[]
230
- }[]
231
- definition: string
232
- }
233
- }
234
- }
202
+ value: string;
203
+ variationId: string;
204
+ }[];
205
+ }[];
206
+ definition: string;
207
+ };
208
+ };
209
+ };
235
210
  prerequisites: {
236
- parentId: string
237
- parentCondition: string
238
- }[]
211
+ parentId: string;
212
+ parentCondition: string;
213
+ }[];
239
214
  revision: {
240
- version: number
241
- comment: string
242
- date: string
243
- publishedBy: string
244
- }
245
- }
246
-
247
- export declare type ObjectFieldWithPath = ObjectField<SchemaType> & {
248
- path: Path
249
- }
250
-
251
- export declare type VariantGeneric<T> = {
252
- [key: string]: string | T | undefined
253
- _type: string
254
- value?: T
255
- }
256
-
257
- export declare type VariantPreviewProps = Omit<PreviewProps, 'SchemaType'> & {
258
- [key: string]: string
259
- value: any
260
- }
261
-
262
- export declare type VariantType = {
263
- id: string
264
- label: string
265
- }
266
-
267
- export {}
215
+ version: number;
216
+ comment: string;
217
+ date: string;
218
+ publishedBy: string;
219
+ };
220
+ };
221
+ declare const fieldLevelExperiments: import("sanity").Plugin<FieldPluginConfig>;
222
+ /**
223
+ * Flattens a document's schema type into a flat array of fields and includes their path
224
+ */
225
+ declare function flattenSchemaType(schemaType: SchemaType): ObjectFieldWithPath[];
226
+ export { ArrayInputProps, ExperimentContextProps, ExperimentGeneric, ExperimentType, FieldPluginConfig, GrowthbookExperiment, GrowthbookFeature, ObjectFieldWithPath, VariantGeneric, VariantPreviewProps, VariantType, fieldLevelExperiments, flattenSchemaType };
227
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/fieldExperiments.tsx","../src/utils/flattenSchemaType.ts"],"mappings":"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"}