11/****************************************************************************
2- * Copyright 2016-2019 , Optimizely, Inc. and contributors *
2+ * Copyright 2016-2020 , Optimizely, Inc. and contributors *
33 * *
44 * Licensed under the Apache License, Version 2.0 (the "License"); *
55 * you may not use this file except in compliance with the License. *
1414 * limitations under the License. *
1515 ***************************************************************************/
1616
17- var jsSdkUtils = require ( '@optimizely/js-sdk-utils' ) ;
17+ import { NOTIFICATION_TYPES as notificationTypesEnum } from '@optimizely/js-sdk-utils' ;
1818
1919/**
2020 * Contains global enums used throughout the library
2121 */
22- exports . LOG_LEVEL = {
22+ export var LOG_LEVEL = {
2323 NOTSET : 0 ,
2424 DEBUG : 1 ,
2525 INFO : 2 ,
2626 WARNING : 3 ,
2727 ERROR : 4 ,
2828} ;
2929
30- exports . ERROR_MESSAGES = {
30+ export var ERROR_MESSAGES = {
3131 CONDITION_EVALUATOR_ERROR : '%s: Error evaluating audience condition of type %s: %s' ,
3232 DATAFILE_AND_SDK_KEY_MISSING : '%s: You must provide at least one of sdkKey or datafile. Cannot start Optimizely' ,
3333 EXPERIMENT_KEY_NOT_IN_DATAFILE : '%s: Experiment key %s is not in datafile.' ,
@@ -65,7 +65,7 @@ exports.ERROR_MESSAGES = {
6565 INVALID_VARIATION_KEY : '%s: Provided variation key is in an invalid format.' ,
6666} ;
6767
68- exports . LOG_MESSAGES = {
68+ export var LOG_MESSAGES = {
6969 ACTIVATE_USER : '%s: Activating user %s in experiment %s.' ,
7070 DISPATCH_CONVERSION_EVENT : '%s: Dispatching conversion event to URL %s with params %s.' ,
7171 DISPATCH_IMPRESSION_EVENT : '%s: Dispatching impression event to URL %s with params %s.' ,
@@ -158,36 +158,36 @@ exports.LOG_MESSAGES = {
158158 UNABLE_TO_ATTACH_UNLOAD : '%s: unable to bind optimizely.close() to page unload event: "%s"' ,
159159} ;
160160
161- exports . RESERVED_EVENT_KEYWORDS = {
161+ export var RESERVED_EVENT_KEYWORDS = {
162162 REVENUE : 'revenue' ,
163163 VALUE : 'value' ,
164164} ;
165165
166- exports . CONTROL_ATTRIBUTES = {
166+ export var CONTROL_ATTRIBUTES = {
167167 BOT_FILTERING : '$opt_bot_filtering' ,
168168 BUCKETING_ID : '$opt_bucketing_id' ,
169169 STICKY_BUCKETING_KEY : '$opt_experiment_bucket_map' ,
170170 USER_AGENT : '$opt_user_agent' ,
171171} ;
172172
173- exports . JAVASCRIPT_CLIENT_ENGINE = 'javascript-sdk' ;
174- exports . NODE_CLIENT_ENGINE = 'node-sdk' ;
175- exports . REACT_CLIENT_ENGINE = 'react-sdk' ;
176- exports . REACT_NATIVE_CLIENT_ENGINE = 'react-native-sdk' ;
177- exports . REACT_NATIVE_JS_CLIENT_ENGINE = 'react-native-js-sdk' ;
178- exports . NODE_CLIENT_VERSION = '4.0.0-alpha.1' ;
173+ export var JAVASCRIPT_CLIENT_ENGINE = 'javascript-sdk' ;
174+ export var NODE_CLIENT_ENGINE = 'node-sdk' ;
175+ export var REACT_CLIENT_ENGINE = 'react-sdk' ;
176+ export var REACT_NATIVE_CLIENT_ENGINE = 'react-native-sdk' ;
177+ export var REACT_NATIVE_JS_CLIENT_ENGINE = 'react-native-js-sdk' ;
178+ export var NODE_CLIENT_VERSION = '4.0.0-alpha.1' ;
179179
180- exports . VALID_CLIENT_ENGINES = [
181- exports . NODE_CLIENT_ENGINE ,
182- exports . REACT_CLIENT_ENGINE ,
183- exports . JAVASCRIPT_CLIENT_ENGINE ,
184- exports . REACT_NATIVE_CLIENT_ENGINE ,
185- exports . REACT_NATIVE_JS_CLIENT_ENGINE ,
180+ export var VALID_CLIENT_ENGINES = [
181+ NODE_CLIENT_ENGINE ,
182+ REACT_CLIENT_ENGINE ,
183+ JAVASCRIPT_CLIENT_ENGINE ,
184+ REACT_NATIVE_CLIENT_ENGINE ,
185+ REACT_NATIVE_JS_CLIENT_ENGINE ,
186186] ;
187187
188- exports . NOTIFICATION_TYPES = jsSdkUtils . NOTIFICATION_TYPES ;
188+ export var NOTIFICATION_TYPES = notificationTypesEnum ;
189189
190- exports . DECISION_NOTIFICATION_TYPES = {
190+ export var DECISION_NOTIFICATION_TYPES = {
191191 AB_TEST : 'ab-test' ,
192192 FEATURE : 'feature' ,
193193 FEATURE_TEST : 'feature-test' ,
@@ -200,15 +200,15 @@ exports.DECISION_NOTIFICATION_TYPES = {
200200 * source is used to decide whether to dispatch an impression event to
201201 * Optimizely.
202202 */
203- exports . DECISION_SOURCES = {
203+ export var DECISION_SOURCES = {
204204 FEATURE_TEST : 'feature-test' ,
205205 ROLLOUT : 'rollout' ,
206206} ;
207207
208208/*
209209 * Possible types of variables attached to features
210210 */
211- exports . FEATURE_VARIABLE_TYPES = {
211+ export var FEATURE_VARIABLE_TYPES = {
212212 BOOLEAN : 'boolean' ,
213213 DOUBLE : 'double' ,
214214 INTEGER : 'integer' ,
@@ -218,8 +218,28 @@ exports.FEATURE_VARIABLE_TYPES = {
218218/*
219219 * Supported datafile versions
220220 */
221- exports . DATAFILE_VERSIONS = {
221+ export var DATAFILE_VERSIONS = {
222222 V2 : '2' ,
223223 V3 : '3' ,
224224 V4 : '4' ,
225225} ;
226+
227+ export default {
228+ LOG_LEVEL : LOG_LEVEL ,
229+ ERROR_MESSAGES : ERROR_MESSAGES ,
230+ LOG_MESSAGES : LOG_MESSAGES ,
231+ RESERVED_EVENT_KEYWORDS : RESERVED_EVENT_KEYWORDS ,
232+ CONTROL_ATTRIBUTES : CONTROL_ATTRIBUTES ,
233+ JAVASCRIPT_CLIENT_ENGINE : JAVASCRIPT_CLIENT_ENGINE ,
234+ NODE_CLIENT_ENGINE : NODE_CLIENT_ENGINE ,
235+ REACT_CLIENT_ENGINE : REACT_CLIENT_ENGINE ,
236+ REACT_NATIVE_CLIENT_ENGINE : REACT_NATIVE_CLIENT_ENGINE ,
237+ REACT_NATIVE_JS_CLIENT_ENGINE : REACT_NATIVE_JS_CLIENT_ENGINE ,
238+ NODE_CLIENT_VERSION : NODE_CLIENT_VERSION ,
239+ VALID_CLIENT_ENGINES : VALID_CLIENT_ENGINES ,
240+ NOTIFICATION_TYPES : NOTIFICATION_TYPES ,
241+ DECISION_NOTIFICATION_TYPES : DECISION_NOTIFICATION_TYPES ,
242+ DECISION_SOURCES : DECISION_SOURCES ,
243+ FEATURE_VARIABLE_TYPES : FEATURE_VARIABLE_TYPES ,
244+ DATAFILE_VERSIONS : DATAFILE_VERSIONS ,
245+ }
0 commit comments