flagsmith-nodejs 2.0.4 → 2.1.2

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.
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <module type="WEB_MODULE" version="4">
3
+ <component name="NewModuleRootManager">
4
+ <content url="file://$MODULE_DIR$">
5
+ <excludeFolder url="file://$MODULE_DIR$/temp" />
6
+ <excludeFolder url="file://$MODULE_DIR$/.tmp" />
7
+ <excludeFolder url="file://$MODULE_DIR$/tmp" />
8
+ </content>
9
+ <orderEntry type="inheritedJdk" />
10
+ <orderEntry type="sourceFolder" forTests="false" />
11
+ </component>
12
+ </module>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectModuleManager">
4
+ <modules>
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/flagsmith-nodejs-client.iml" filepath="$PROJECT_DIR$/.idea/flagsmith-nodejs-client.iml" />
6
+ </modules>
7
+ </component>
8
+ </project>
package/.idea/vcs.xml ADDED
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="VcsDirectoryMappings">
4
+ <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
+ </component>
6
+ </project>
@@ -2,6 +2,13 @@ import { EnvironmentModel } from './environments/models';
2
2
  import { FeatureStateModel } from './features/models';
3
3
  import { IdentityModel } from './identities/models';
4
4
  import { TraitModel } from './identities/traits/models';
5
+ export { EnvironmentModel } from './environments/models';
6
+ export { IntegrationModel } from './environments/integrations/models';
7
+ export { FeatureStateModel } from './features/models';
8
+ export { IdentityModel } from './identities/models';
9
+ export { TraitModel } from './identities/traits/models';
10
+ export { SegmentModel } from './segments/models';
11
+ export { OrganisationModel } from './organisations/models';
5
12
  export declare function getIdentityFeatureState(environment: EnvironmentModel, identity: IdentityModel, featureName: string, overrideTraits?: TraitModel[]): FeatureStateModel;
6
13
  export declare function getIdentityFeatureStates(environment: EnvironmentModel, identity: IdentityModel, overrideTraits?: TraitModel[]): FeatureStateModel[];
7
14
  export declare function getEnvironmentFeatureState(environment: EnvironmentModel, featureName: string): FeatureStateModel;
@@ -11,9 +11,23 @@ var __values = (this && this.__values) || function(o) {
11
11
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.getEnvironmentFeatureStates = exports.getEnvironmentFeatureState = exports.getIdentityFeatureStates = exports.getIdentityFeatureState = void 0;
14
+ exports.getEnvironmentFeatureStates = exports.getEnvironmentFeatureState = exports.getIdentityFeatureStates = exports.getIdentityFeatureState = exports.OrganisationModel = exports.SegmentModel = exports.TraitModel = exports.IdentityModel = exports.FeatureStateModel = exports.IntegrationModel = exports.EnvironmentModel = void 0;
15
15
  var evaluators_1 = require("./segments/evaluators");
16
16
  var errors_1 = require("./utils/errors");
17
+ var models_1 = require("./environments/models");
18
+ Object.defineProperty(exports, "EnvironmentModel", { enumerable: true, get: function () { return models_1.EnvironmentModel; } });
19
+ var models_2 = require("./environments/integrations/models");
20
+ Object.defineProperty(exports, "IntegrationModel", { enumerable: true, get: function () { return models_2.IntegrationModel; } });
21
+ var models_3 = require("./features/models");
22
+ Object.defineProperty(exports, "FeatureStateModel", { enumerable: true, get: function () { return models_3.FeatureStateModel; } });
23
+ var models_4 = require("./identities/models");
24
+ Object.defineProperty(exports, "IdentityModel", { enumerable: true, get: function () { return models_4.IdentityModel; } });
25
+ var models_5 = require("./identities/traits/models");
26
+ Object.defineProperty(exports, "TraitModel", { enumerable: true, get: function () { return models_5.TraitModel; } });
27
+ var models_6 = require("./segments/models");
28
+ Object.defineProperty(exports, "SegmentModel", { enumerable: true, get: function () { return models_6.SegmentModel; } });
29
+ var models_7 = require("./organisations/models");
30
+ Object.defineProperty(exports, "OrganisationModel", { enumerable: true, get: function () { return models_7.OrganisationModel; } });
17
31
  function getIdentityFeatureStatesDict(environment, identity, overrideTraits) {
18
32
  var e_1, _a, e_2, _b, e_3, _c, e_4, _d;
19
33
  // Get feature states from the environment
package/build/index.d.ts CHANGED
@@ -1 +1,2 @@
1
- export { Flagsmith } from './sdk';
1
+ export { AnalyticsProcessor, FlagsmithAPIError, FlagsmithClientError, EnvironmentDataPollingManager, FlagsmithCache, DefaultFlag, Flags } from './sdk';
2
+ export { EnvironmentModel, IntegrationModel, FeatureStateModel, IdentityModel, TraitModel, SegmentModel, OrganisationModel } from './flagsmith-engine';
package/build/index.js CHANGED
@@ -3,9 +3,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Flagsmith = void 0;
6
+ exports.OrganisationModel = exports.SegmentModel = exports.TraitModel = exports.IdentityModel = exports.FeatureStateModel = exports.IntegrationModel = exports.EnvironmentModel = exports.Flags = exports.DefaultFlag = exports.EnvironmentDataPollingManager = exports.FlagsmithClientError = exports.FlagsmithAPIError = exports.AnalyticsProcessor = void 0;
7
7
  var sdk_1 = __importDefault(require("./sdk"));
8
8
  var sdk_2 = require("./sdk");
9
- Object.defineProperty(exports, "Flagsmith", { enumerable: true, get: function () { return sdk_2.Flagsmith; } });
10
- // export default Flagsmith;
9
+ Object.defineProperty(exports, "AnalyticsProcessor", { enumerable: true, get: function () { return sdk_2.AnalyticsProcessor; } });
10
+ Object.defineProperty(exports, "FlagsmithAPIError", { enumerable: true, get: function () { return sdk_2.FlagsmithAPIError; } });
11
+ Object.defineProperty(exports, "FlagsmithClientError", { enumerable: true, get: function () { return sdk_2.FlagsmithClientError; } });
12
+ Object.defineProperty(exports, "EnvironmentDataPollingManager", { enumerable: true, get: function () { return sdk_2.EnvironmentDataPollingManager; } });
13
+ Object.defineProperty(exports, "DefaultFlag", { enumerable: true, get: function () { return sdk_2.DefaultFlag; } });
14
+ Object.defineProperty(exports, "Flags", { enumerable: true, get: function () { return sdk_2.Flags; } });
15
+ var flagsmith_engine_1 = require("./flagsmith-engine");
16
+ Object.defineProperty(exports, "EnvironmentModel", { enumerable: true, get: function () { return flagsmith_engine_1.EnvironmentModel; } });
17
+ Object.defineProperty(exports, "IntegrationModel", { enumerable: true, get: function () { return flagsmith_engine_1.IntegrationModel; } });
18
+ Object.defineProperty(exports, "FeatureStateModel", { enumerable: true, get: function () { return flagsmith_engine_1.FeatureStateModel; } });
19
+ Object.defineProperty(exports, "IdentityModel", { enumerable: true, get: function () { return flagsmith_engine_1.IdentityModel; } });
20
+ Object.defineProperty(exports, "TraitModel", { enumerable: true, get: function () { return flagsmith_engine_1.TraitModel; } });
21
+ Object.defineProperty(exports, "SegmentModel", { enumerable: true, get: function () { return flagsmith_engine_1.SegmentModel; } });
22
+ Object.defineProperty(exports, "OrganisationModel", { enumerable: true, get: function () { return flagsmith_engine_1.OrganisationModel; } });
11
23
  module.exports = sdk_1.default;
@@ -3,6 +3,11 @@ import { DefaultFlag, Flags } from './models';
3
3
  import { EnvironmentDataPollingManager } from './polling_manager';
4
4
  import { SegmentModel } from '../flagsmith-engine/segments/models';
5
5
  import { FlagsmithCache } from './types';
6
+ export { AnalyticsProcessor } from './analytics';
7
+ export { FlagsmithAPIError, FlagsmithClientError } from './errors';
8
+ export { DefaultFlag, Flags } from './models';
9
+ export { EnvironmentDataPollingManager } from './polling_manager';
10
+ export { FlagsmithCache } from './types';
6
11
  export declare class Flagsmith {
7
12
  environmentKey?: string;
8
13
  apiUrl: string;
@@ -63,7 +63,7 @@ var __read = (this && this.__read) || function (o, n) {
63
63
  return ar;
64
64
  };
65
65
  Object.defineProperty(exports, "__esModule", { value: true });
66
- exports.Flagsmith = void 0;
66
+ exports.Flagsmith = exports.EnvironmentDataPollingManager = exports.Flags = exports.DefaultFlag = exports.FlagsmithClientError = exports.FlagsmithAPIError = exports.AnalyticsProcessor = void 0;
67
67
  var flagsmith_engine_1 = require("../flagsmith-engine");
68
68
  var util_1 = require("../flagsmith-engine/environments/util");
69
69
  var models_1 = require("../flagsmith-engine/identities/models");
@@ -74,6 +74,16 @@ var models_3 = require("./models");
74
74
  var polling_manager_1 = require("./polling_manager");
75
75
  var utils_1 = require("./utils");
76
76
  var evaluators_1 = require("../flagsmith-engine/segments/evaluators");
77
+ var analytics_2 = require("./analytics");
78
+ Object.defineProperty(exports, "AnalyticsProcessor", { enumerable: true, get: function () { return analytics_2.AnalyticsProcessor; } });
79
+ var errors_2 = require("./errors");
80
+ Object.defineProperty(exports, "FlagsmithAPIError", { enumerable: true, get: function () { return errors_2.FlagsmithAPIError; } });
81
+ Object.defineProperty(exports, "FlagsmithClientError", { enumerable: true, get: function () { return errors_2.FlagsmithClientError; } });
82
+ var models_4 = require("./models");
83
+ Object.defineProperty(exports, "DefaultFlag", { enumerable: true, get: function () { return models_4.DefaultFlag; } });
84
+ Object.defineProperty(exports, "Flags", { enumerable: true, get: function () { return models_4.Flags; } });
85
+ var polling_manager_2 = require("./polling_manager");
86
+ Object.defineProperty(exports, "EnvironmentDataPollingManager", { enumerable: true, get: function () { return polling_manager_2.EnvironmentDataPollingManager; } });
77
87
  var DEFAULT_API_URL = 'https://edge.api.flagsmith.com/api/v1/';
78
88
  var Flagsmith = /** @class */ (function () {
79
89
  /**
@@ -0,0 +1,3 @@
1
+ {
2
+ "presets": ["@babel/preset-env"]
3
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "extends": ["eslint:recommended", "prettier"],
3
+ "parserOptions": {
4
+ "ecmaVersion": 2018,
5
+ "sourceType": "module"
6
+ },
7
+ "env": { "es6": true, "node": true }
8
+ }
@@ -0,0 +1,62 @@
1
+ # Nodejs-ES6-Boilerplate
2
+ [![Made in Indonesia](https://made-in-indonesia.github.io/made-in-indonesia.svg)](https://github.com/made-in-indonesia/made-in-indonesia)
3
+
4
+ A Node.js boilerplate with ES6, ESLint, and Prettier
5
+
6
+ ## Background
7
+
8
+ I created this boilerplate because I have several coding interviews that needs to be done using JavaScript.
9
+
10
+ ## Scripts
11
+
12
+ ```bash
13
+ # Run the project without nodemon
14
+ npm run start
15
+
16
+ # Build the project
17
+ npm run build
18
+
19
+ # Clean build
20
+ npm run clean
21
+
22
+ # Check the lint errors
23
+ npm run lint
24
+
25
+ # Fix the lint errors
26
+ npm run lint:fix
27
+
28
+ # Run prettier
29
+ npm run format
30
+
31
+ # Check prettier errors
32
+ npm run format:check
33
+ ```
34
+
35
+ ## Usage
36
+
37
+ 1. Clone the repository and init new git project
38
+
39
+ ```bash
40
+ $ git clone git@github.com:vferdiansyah/nodejs-es6-boilerplate.git ./your/project/folder
41
+ $ cd ./your/project/folder
42
+ $ rm -rf .git
43
+ $ git init
44
+ ```
45
+
46
+ 2. Change project specific information in the following places
47
+
48
+ - [package.json](./package.json)
49
+ - [README.md](./README.md)
50
+
51
+ 3. Install dependencies
52
+
53
+ ```bash
54
+ $ npm i
55
+ ```
56
+
57
+ 4. Start coding
58
+
59
+ ## License
60
+
61
+ Copyright (c) 2020 Veri Ferdiansyah
62
+ Licensed under the MIT license.