Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
171 commits
Select commit Hold shift + click to select a range
5dcabfd
new generated api based on fetch
jasonwaters Feb 5, 2020
fc3d134
refactored to support a nodejs and browser
jasonwaters Feb 6, 2020
df3ed0b
removed dependency
jasonwaters Feb 6, 2020
7eeef31
don't rely on reactor-query-string
jasonwaters Feb 6, 2020
028e483
two separate builds
jasonwaters Feb 7, 2020
7dc9aaa
mock fetch in request test
jasonwaters Feb 7, 2020
6bb783a
support timeout
jasonwaters Feb 7, 2020
34dcdc0
added polyfills to support ie11
jasonwaters Feb 7, 2020
ee23614
Create nodejs.yml
jasonwaters Mar 27, 2020
c0f1997
Update nodejs.yml
jasonwaters Mar 27, 2020
d54de07
reorganized repository to support multiple packages
jasonwaters Feb 10, 2020
5a1b433
added artifact provider with tests
jasonwaters Feb 12, 2020
4f10f6f
[nodeSDK] support for environment
jasonwaters Feb 12, 2020
0cbb140
added support for evaluationMode config param. Can be set to one of (…
jasonwaters Feb 12, 2020
981d5d8
create a decisioning engine instance if local is passed in as the eva…
jasonwaters Feb 13, 2020
bf7225c
fix polling interval bug
jasonwaters Feb 13, 2020
00b0d7a
scrub client and organization IDs in tests
jasonwaters Feb 13, 2020
38a56c7
reject getOffers requests with an error if the artifact is not yet do…
jasonwaters Feb 13, 2020
31c0b0d
error handling and fetch retries
jasonwaters Feb 14, 2020
2306f16
add module field to package.json
jasonwaters Feb 24, 2020
4c9b923
test promise resolution for decisioning engine getOffers
jasonwaters Feb 24, 2020
c88bffb
generate context for browser, page, timings and compute allocation
jasonwaters Feb 25, 2020
2adf2cc
return decisions for an AB form-based activity, with tests
jasonwaters Feb 26, 2020
d9066e8
tests for multiple AB activities
jasonwaters Feb 27, 2020
626d66c
support for url and parameter contexts
jasonwaters Feb 27, 2020
1ab1368
support referring url
jasonwaters Feb 27, 2020
7898017
tests for browser
jasonwaters Feb 28, 2020
de61de4
timeframe tests
jasonwaters Feb 28, 2020
301cbda
skip timeframe tests until prioritization is done
jasonwaters Mar 2, 2020
cd8353b
add other attributes to response object to model delivery API
jasonwaters Mar 2, 2020
fb333ab
integrate decisioning engine with node sdk
jasonwaters Mar 2, 2020
1986c1d
getAttribures functionality added
jasonwaters Mar 3, 2020
8406473
updated demo to do remote and local
jasonwaters Mar 3, 2020
ca6b1fa
updated demo to do remote and local
jasonwaters Mar 3, 2020
3d21fe0
Download new Local-decisioning JSON rules file only when necessary
jasonwaters Mar 4, 2020
b043f41
Send notifications for outcome of local decisions
jasonwaters Mar 5, 2020
3eaaf6a
updated getAttributes to support multiple mbox names
jasonwaters Mar 5, 2020
155de72
moving things around a bit
jasonwaters Mar 7, 2020
4e49385
maddening
jasonwaters Mar 7, 2020
deacece
es6 migration complete, fetch working in node and browser
jasonwaters Mar 7, 2020
7efb438
fetchApi passed down to decisioning engine as well
jasonwaters Mar 9, 2020
f5ac57d
support for hybrid execution mode
jasonwaters Mar 10, 2020
ca89825
decisioning types
jasonwaters Mar 10, 2020
9128d42
classic mboxes return only one outcome, and also return a blank if no…
jasonwaters Mar 13, 2020
3c8c677
testing activity priority
jasonwaters Mar 13, 2020
724ca8f
timeframe tests working with proper priority
jasonwaters Mar 13, 2020
e3163d0
visualize rollup bundles
jasonwaters Mar 16, 2020
87e2d76
esnext delivery-api-client
jasonwaters Mar 16, 2020
e3c21dd
updated to latest artifact schema
jasonwaters Mar 19, 2020
59a0259
improved test coverage of target-tools
jasonwaters Mar 19, 2020
ad586b1
support pageLoad requests
jasonwaters Mar 20, 2020
b8b2ccd
ensure tntId
jasonwaters Mar 24, 2020
0a09a90
support minimal context
jasonwaters Mar 25, 2020
cb9cf7e
Ensure that targetLocationHintCookie is returned even in local execut…
jasonwaters Mar 27, 2020
e127812
retry delivery api requests up to 10 times before failure
jasonwaters Mar 27, 2020
708c1bf
fix build for node 8
jasonwaters Mar 27, 2020
932159f
fixing timing context test
jasonwaters Mar 27, 2020
6350439
set coverage thresholds and fail the build if unmet
jasonwaters Mar 27, 2020
c00a1f1
updated path to target-nodejs-sdk coverage for coveralls
jasonwaters Mar 27, 2020
9f92088
coveralls badge in README
jasonwaters Mar 27, 2020
38e2226
updated coveralls github action version
jasonwaters Mar 27, 2020
72a98fc
combine coverage reports into one
jasonwaters Mar 30, 2020
5f9b171
combine coverage reports into one
jasonwaters Mar 30, 2020
f7c2112
move documentation
jasonwaters Mar 30, 2020
bdc960f
uuid for notification id and impressionId
jasonwaters Mar 30, 2020
d43ce2f
preparing for alpha
jasonwaters Mar 31, 2020
08caf0f
preparing for alpha
jasonwaters Mar 31, 2020
c1936b2
moving docs
jasonwaters Mar 31, 2020
d832d17
documentation for sdk
jasonwaters Mar 31, 2020
b271307
updated documentation
jasonwaters Apr 6, 2020
376fd0b
trace support
jasonwaters Apr 16, 2020
af6bb42
alpha.3
jasonwaters Apr 16, 2020
289a08c
refactored a bit for code reuse in at.js
jasonwaters Apr 21, 2020
d08963c
updated README-ALPHA.md
jasonwaters Apr 22, 2020
f66b5a8
tntId does not include locationHint if empty string
jasonwaters Apr 24, 2020
3d0fed4
Merge pull request #6 from jasonwaters/develop
jasonwaters Apr 24, 2020
aff8cce
change status to meta
jasonwaters Apr 24, 2020
7df4e75
trace fix
jasonwaters Apr 27, 2020
61a029f
now generating the url to artifact and removed the CORS request when …
jasonwaters Apr 28, 2020
9882d64
TNT-34523 A4T: Fix SDID in LD notifications call
XDex Apr 29, 2020
73c5cfa
add executionMode to DeliveryAPIApi prototype
jasonwaters Apr 29, 2020
c29a475
changed metrics to notifications array for campaign traces
jasonwaters Apr 29, 2020
af0c36c
publishConfigs added to packages
jasonwaters Apr 29, 2020
3c15e33
lerna
jasonwaters Apr 30, 2020
41c3fbb
Publish
jasonwaters Apr 30, 2020
f9b1f1a
view support
jasonwaters May 5, 2020
f343394
trace support for views, also refactored a bit
jasonwaters May 5, 2020
27a187f
special handling of selector based offers in pageLoad options
jasonwaters May 6, 2020
c60d8d0
apply all views that match conditions
jasonwaters May 7, 2020
f9ebee6
some logging
jasonwaters May 7, 2020
4c56e65
fix for domain attribute on context
jasonwaters May 7, 2020
69e6771
clone consequence objects so they don't get mutated
jasonwaters May 8, 2020
5d86d4a
improved view rule evaluation and test coverage
jasonwaters May 8, 2020
7a872c3
handle blank mboxes in getAttributes calls
jasonwaters May 11, 2020
eda3831
updated README with support for VEC activities
jasonwaters May 12, 2020
9d33723
test scratch paper
jasonwaters May 12, 2020
81ecb37
Publish
jasonwaters May 12, 2020
dd8bab2
bugfix for checking if fetch is defined, updated demo page
jasonwaters May 12, 2020
c5ef622
Publish
jasonwaters May 12, 2020
73fe4d3
display notifications are now generated from options (#14)
jasonwaters May 13, 2020
66f02a0
Publish
jasonwaters May 13, 2020
6c5990f
updated test artifacts with latest from production, tests passing
jasonwaters May 20, 2020
f159e18
Publish
jasonwaters May 20, 2020
53180d3
updated README
jasonwaters May 20, 2020
1879902
handle executionMode override error cases
jasonwaters May 22, 2020
dfcf2e8
ruleId->ruleKey
jasonwaters May 22, 2020
09f5f7d
fix coveralls
jasonwaters May 22, 2020
37a6182
test node.js 14 as well
jasonwaters May 26, 2020
6b05c7c
handle missing metrics or options arrays
jasonwaters May 27, 2020
17c8ef7
update test artifacts to use staging
jasonwaters May 27, 2020
ed744f7
use prettier to format test artifacts to make it more obvious what ch…
jasonwaters May 27, 2020
943670b
Publish
jasonwaters May 27, 2020
2244915
Property support (#17)
jasonwaters Jun 17, 2020
c35b5a6
Publish
jasonwaters Jun 17, 2020
44b0424
don't load property-specific artifacts in Node (#18)
jasonwaters Jun 22, 2020
9143ead
events support (#19)
jasonwaters Jun 23, 2020
c5c11e7
Publish
jasonwaters Jun 23, 2020
ce3bafc
continue to poll for artifact even if an artifactPayload is given (#20)
jasonwaters Jun 23, 2020
08c0540
Publish
jasonwaters Jun 23, 2020
a208280
TNT-34980 Geo Support in Node.js SDK (#16)
Jul 7, 2020
c5ec7c3
Publish
jasonwaters Jul 7, 2020
d614831
Docs geo support (#22)
Jul 8, 2020
fe477a4
Updated how decisioning-engine determines if remote is needed for hyb…
jasonwaters Jul 8, 2020
49ce2b5
Publish
jasonwaters Jul 8, 2020
1f10e3c
Reduce size (#23)
jasonwaters Jul 14, 2020
c5bf82f
Merge branch 'upstream/master'
jasonwaters Jul 14, 2020
dbbc242
updated package-lock files
jasonwaters Jul 14, 2020
6b802fe
Publish
jasonwaters Jul 14, 2020
031d0aa
geo bugfixes and tests
jasonwaters Jul 16, 2020
5fdb5a3
TNT-35311 Add response tokens (#24)
5amfung Jul 17, 2020
9431562
Publish
jasonwaters Jul 20, 2020
0074a10
case insensitive geo headers
jasonwaters Jul 22, 2020
9d91b31
Add test for offer.name (#26)
5amfung Jul 23, 2020
20ff9b6
extract geo values from payload as well (#25)
jasonwaters Jul 23, 2020
9cc865f
remove async/await from target-decisioning-engine and target-tools (#27)
jasonwaters Jul 23, 2020
4e4a2d9
Publish
jasonwaters Jul 24, 2020
ecb653a
Support ie11 (#28)
jasonwaters Jul 31, 2020
be120ee
Publish
jasonwaters Jul 31, 2020
b72d05a
TNT-36958 Rename to on-device decisioning (#29)
5amfung Jul 31, 2020
5a8b151
Publish
jasonwaters Jul 31, 2020
8563ddf
artifact deobfuscation (#30)
jasonwaters Aug 12, 2020
193ec00
Publish
jasonwaters Aug 12, 2020
b2ae747
performance improvements (#31)
jasonwaters Aug 31, 2020
3b50588
Publish
jasonwaters Aug 31, 2020
0959544
fix perfTool timing tests
jasonwaters Aug 31, 2020
dd660e2
Support for Campaign Macros (#32)
jasonwaters Sep 4, 2020
fbc6e8c
Publish
jasonwaters Sep 4, 2020
8d03f10
on-device decisioning telemetry (#33)
jasonwaters Sep 30, 2020
3793234
Publish
jasonwaters Sep 30, 2020
e5583d0
use generated open-api spec for telemetry (#34)
jasonwaters Oct 20, 2020
d60fd7b
fix for undefined geo
jasonwaters Oct 21, 2020
abe84ed
updated README.md and CHANGELOG.md (#35)
jasonwaters Oct 22, 2020
8aabe83
Update CHANGELOG.md
jasonwaters Oct 22, 2020
52d886c
updated README.md and CHANGELOG.md
jasonwaters Oct 22, 2020
f73b205
updated format npm scripts, added prettier pre-commit git hook (#36)
jasonwaters Oct 27, 2020
45cabc5
remove alpha tag for publishing
jasonwaters Oct 27, 2020
01616c0
Merge branch 'upstream/master'
jasonwaters Oct 27, 2020
2c028a1
node 15 support (#37)
jasonwaters Oct 28, 2020
b5e37f1
github action
jasonwaters Oct 28, 2020
190b65a
github action
jasonwaters Oct 28, 2020
c6fba06
github action
jasonwaters Oct 28, 2020
9927ece
github action
jasonwaters Oct 28, 2020
ab78df9
github action
jasonwaters Oct 28, 2020
61ee9ad
Publish
jasonwaters Oct 28, 2020
2ee5dd4
github action
jasonwaters Oct 28, 2020
417e464
github action
jasonwaters Oct 28, 2020
1f9754a
github action
jasonwaters Oct 28, 2020
ed7c3b2
github action
jasonwaters Oct 28, 2020
ddc4220
github action
jasonwaters Oct 28, 2020
071a5ce
github action
jasonwaters Oct 28, 2020
37b9755
remove github actions dependencies
jasonwaters Oct 28, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: CI

on:
push:
branches: [ master ]
branches: [main]
pull_request:
branches: [ master ]
branches: [main]

jobs:
build:
Expand All @@ -13,7 +13,7 @@ jobs:

strategy:
matrix:
node-version: [8.x, 10.x, 12.x, 14.x]
node-version: [10.x, 12.x, 14.x, 15.x]
steps:
- uses: actions/checkout@master
- name: Use Node.js ${{ matrix.node-version }}
Expand All @@ -23,7 +23,8 @@ jobs:
- name: build, test, generate coverage
run: |
npm ci
npm test
npm run build
npm run test
env:
CI: true
- name: coveralls
Expand Down
38 changes: 38 additions & 0 deletions .github/workflows/npm-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: npm-publish
on:
workflow_dispatch:
inputs:
semverBump:
description: "Bump which semver version number? (major, minor, patch)"
required: true
default: "patch"

jobs:
npm-publish:
name: npm-publish
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@master
with:
fetch-depth: 0
- name: Configure git user for release commits
env:
X_GITHUB_USERNAME: ${{ secrets.ADOBE_BOT_GITHUB_USERNAME }}
run: |
git config user.email "Grp-opensourceoffice@adobe.com"
git config user.name "${X_GITHUB_USERNAME}"
- name: Set up Node.js
uses: actions/setup-node@master
with:
node-version: 14
- name: Publish to registry.npmjs.org
run: |
npm ci
npm run publish ${{ github.event.inputs.semverBump }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Leave this as is, it's automatically generated
NPM_AUTH_TOKEN: ${{ secrets.ADOBE_BOT_NPM_TOKEN }} # This will be shared with your repo as an org secret
NPM_AUTH: ${{ secrets.ADOBE_BOT_NPM_TOKEN }} # This will be shared with your repo as an org secret
NPM_REGISTRY: registry.npmjs.org
CI: true
30 changes: 16 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
# Adobe Target Node.js SDK

[![npm](https://img.shields.io/npm/v/@adobe/target-nodejs-sdk)](https://www.npmjs.com/package/@adobe/target-nodejs-sdk)
[![npm](https://img.shields.io/npm/dm/@adobe/target-nodejs-sdk)](https://www.npmjs.com/package/@adobe/target-nodejs-sdk)
[![build](https://github.com/adobe/target-nodejs-sdk/workflows/CI/badge.svg)](https://github.com/adobe/target-nodejs-sdk/actions)
[![coveralls](https://img.shields.io/coveralls/github/adobe/target-nodejs-sdk)](https://coveralls.io/github/adobe/target-nodejs-sdk?branch=HEAD)
[![license](https://img.shields.io/npm/l/@adobe/target-nodejs-sdk.svg)](https://github.com/adobe/target-nodejs-sdk/blob/master/LICENSE)
[![license](https://img.shields.io/npm/l/@adobe/target-nodejs-sdk.svg)](https://github.com/adobe/target-nodejs-sdk/blob/main/LICENSE)

The Adobe Target Node.js SDK uses the [Target Delivery API] to retrieve and deliver personalized experiences.
Furthermore, the Node.js SDK helps manage integrations with Experience Cloud solutions using the [Experience Cloud Identity](https://docs.adobe.com/content/help/en/id-service/using/intro/overview.html)
library (ECID).

## Table of Contents

* [Getting started](#getting-started)
+ [Prerequisites](#prerequisites)
+ [Installation](#installation)
+ [Super Simple to Use](#super-simple-to-use)
* [Development](#development)
* [Additional code](#additional-code)
- [Getting started](#getting-started)
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Super Simple to Use](#super-simple-to-use)
- [Development](#development)
- [Additional code](#additional-code)

## Getting started

Expand All @@ -26,9 +27,10 @@ All currently maintained versions of Node.js are supported (including LTS versio
[Node.js Releases](https://en.wikipedia.org/wiki/Node.js#Releases).
Older Node.js releases may likely work too, but are not officially supported.

### Installation
### Installation

To get started with Target Node.js SDK, just add it as a dependency by installing from NPM:

```bash
npm i @adobe/target-nodejs-sdk -P
```
Expand All @@ -43,7 +45,7 @@ Check out our [Contribution guidelines](../../.github/CONTRIBUTING.md) as well a
to contributing to Target Node.js SDK development.
To build the project: `npm run build`
To run the unit tests: `npm test`
To generate code coverage after running the tests: `npm run coverage`
To generate code coverage after running the tests: `npm run coverage`

## Additional code

Expand All @@ -55,10 +57,10 @@ Production dependencies include:
"version": "2.0.0",
"license": "Adobe Proprietary license"
},
"request": {
"version": "2.88.0",
"license": "Apache-2.0",
"repository": "https://github.com/request/request"
"node-fetch": {
"version": "2.6.1",
"license": "MIT",
"repository": "https://github.com/node-fetch/node-fetch"
}
}
```
Expand All @@ -67,4 +69,4 @@ Production dependencies include:

[back to top](#table-of-contents)

[Target Delivery API]: https://developers.adobetarget.com/api/delivery-api/
[target delivery api]: https://developers.adobetarget.com/api/delivery-api/
8 changes: 3 additions & 5 deletions lerna.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
{
"packages": [
"packages/*"
],
"packages": ["packages/*"],
"command": {
"version": {
"allowBranch": "master"
"allowBranch": "main"
},
"publish": {
"allowBranch": "master"
"allowBranch": "main"
}
},
"version": "independent"
Expand Down
Loading