flagsmith-nodejs 1.1.3 → 2.0.0-beta.3

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 (65) hide show
  1. package/.github/workflows/pull_request.yaml +33 -0
  2. package/.gitmodules +3 -0
  3. package/.husky/pre-commit +6 -0
  4. package/.tool-versions +1 -0
  5. package/example/README.md +0 -6
  6. package/example/package-lock.json +1070 -2
  7. package/example/package.json +4 -3
  8. package/example/server/api/index.js +23 -18
  9. package/example/server/index.js +7 -6
  10. package/flagsmith-engine/environments/integrations/models.ts +4 -0
  11. package/flagsmith-engine/environments/models.ts +50 -0
  12. package/flagsmith-engine/environments/util.ts +29 -0
  13. package/flagsmith-engine/features/constants.ts +4 -0
  14. package/flagsmith-engine/features/models.ts +105 -0
  15. package/flagsmith-engine/features/util.ts +38 -0
  16. package/flagsmith-engine/identities/models.ts +60 -0
  17. package/flagsmith-engine/identities/traits/models.ts +9 -0
  18. package/flagsmith-engine/identities/util.ts +30 -0
  19. package/flagsmith-engine/index.ts +93 -0
  20. package/flagsmith-engine/organisations/models.ts +25 -0
  21. package/flagsmith-engine/organisations/util.ts +11 -0
  22. package/flagsmith-engine/projects/models.ts +22 -0
  23. package/flagsmith-engine/projects/util.ts +18 -0
  24. package/flagsmith-engine/segments/constants.ts +31 -0
  25. package/flagsmith-engine/segments/evaluators.ts +72 -0
  26. package/flagsmith-engine/segments/models.ts +103 -0
  27. package/flagsmith-engine/segments/util.ts +29 -0
  28. package/flagsmith-engine/utils/collections.ts +14 -0
  29. package/flagsmith-engine/utils/errors.ts +1 -0
  30. package/flagsmith-engine/utils/hashing/index.ts +52 -0
  31. package/flagsmith-engine/utils/index.ts +10 -0
  32. package/index.ts +6 -0
  33. package/jest.config.js +5 -0
  34. package/package.json +30 -12
  35. package/sdk/analytics.ts +60 -0
  36. package/sdk/errors.ts +2 -0
  37. package/sdk/index.ts +329 -0
  38. package/sdk/models.ts +145 -0
  39. package/sdk/polling_manager.ts +31 -0
  40. package/sdk/utils.ts +45 -0
  41. package/tests/engine/e2e/engine.test.ts +51 -0
  42. package/tests/engine/engine-tests/engine-test-data/data/environment_n9fbf9h3v4fFgH3U3ngWhb.json +12393 -0
  43. package/tests/engine/engine-tests/engine-test-data/readme.md +30 -0
  44. package/tests/engine/unit/egine.test.ts +96 -0
  45. package/tests/engine/unit/environments/builder.test.ts +148 -0
  46. package/tests/engine/unit/environments/models.test.ts +49 -0
  47. package/tests/engine/unit/features/models.test.ts +72 -0
  48. package/tests/engine/unit/identities/identities_builders.test.ts +85 -0
  49. package/tests/engine/unit/identities/identities_models.test.ts +105 -0
  50. package/tests/engine/unit/organization/models.test.ts +12 -0
  51. package/tests/engine/unit/segments/segments_model.test.ts +101 -0
  52. package/tests/engine/unit/segments/util.ts +151 -0
  53. package/tests/engine/unit/utils.ts +114 -0
  54. package/tests/index.js +0 -0
  55. package/tests/sdk/analytics.test.ts +43 -0
  56. package/tests/sdk/data/environment.json +70 -0
  57. package/tests/sdk/data/flags.json +20 -0
  58. package/tests/sdk/data/identities.json +29 -0
  59. package/tests/sdk/flagsmith.test.ts +203 -0
  60. package/tests/sdk/polling.test.ts +34 -0
  61. package/tests/sdk/utils.ts +39 -0
  62. package/tsconfig.json +19 -0
  63. package/flagsmith-core.js +0 -243
  64. package/index.d.ts +0 -85
  65. package/index.js +0 -3
@@ -0,0 +1,33 @@
1
+ name: Unit/Integration Tests
2
+
3
+ on:
4
+ pull_request:
5
+ types:
6
+ - opened
7
+ - synchronize
8
+ - reopened
9
+ - ready_for_review
10
+ push:
11
+ branches:
12
+ - main
13
+ jobs:
14
+ build-and-test:
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - uses: actions/checkout@v2
18
+ - uses: actions/setup-node@v1
19
+ with:
20
+ node-version: '15.x'
21
+ - name: cache node modules
22
+ uses: actions/cache@v1
23
+ with:
24
+ path: ~/.npm # npm cache files are stored in `~/.npm` on Linux/macOS
25
+ key: npm-${{ hashFiles('package-lock.json') }}
26
+ restore-keys: |
27
+ npm-${{ hashFiles('package-lock.json') }}
28
+ npm-
29
+ - run: npm i -g npm@7.0.2
30
+ - run: npm install
31
+ - run: npm test
32
+ env:
33
+ CI: true
package/.gitmodules ADDED
@@ -0,0 +1,3 @@
1
+ [submodule "tests/engine/engine-tests/engine-test-data"]
2
+ path = tests/engine/engine-tests/engine-test-data
3
+ url = git@github.com:Flagsmith/engine-test-data.git
@@ -0,0 +1,6 @@
1
+ #!/bin/sh
2
+ . "$(dirname "$0")/_/husky.sh"
3
+
4
+ npm run lint
5
+ git add ./flagsmith-engine ./sdk ./tests ./example ./index.ts ./.github
6
+ npm run test
package/.tool-versions ADDED
@@ -0,0 +1 @@
1
+ nodejs 16.14.0
package/example/README.md CHANGED
@@ -2,12 +2,6 @@
2
2
 
3
3
  ## Getting Started
4
4
 
5
- # Setup via cli
6
-
7
- `npm i ssg-node -g`
8
-
9
- `ssg-node PROJECT_NAME`
10
-
11
5
  # Run
12
6
 
13
7
  `$ npm start`