Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 4 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
coverage
lib
node_modules
tests/resources/*
68 changes: 68 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
module.exports = {
env: {
browser: false,
es2020: true,
jest: true,
node: true,
},
extends: [ 'prettier', 'plugin:@typescript-eslint/eslint-recommended', 'plugin:@typescript-eslint/recommended' ],
parser: '@typescript-eslint/parser',
plugins: [ 'prettier' , '@typescript-eslint', 'sort-exports' ],
settings: {
'import/resolver': {
node: {},
typescript: {
project: './tsconfig.es.json',
alwaysTryTypes: true,
},
},
},
rules: {
'sort-exports/sort-exports': [ 'error', { 'sortDir': 'asc' } ],
'@typescript-eslint/ban-ts-ignore': ['off'],
'@typescript-eslint/camelcase': ['off'],
'@typescript-eslint/explicit-function-return-type': [ 'error', { allowExpressions: true } ],
'@typescript-eslint/explicit-member-accessibility': 'error',
'@typescript-eslint/indent': [ 'error', 2, { SwitchCase: 1 } ],
'@typescript-eslint/interface-name-prefix': ['off'],
'@typescript-eslint/member-delimiter-style': [ 'error', { multiline: { delimiter: 'none' } } ],
'@typescript-eslint/member-ordering': [
'error',
{
default: {
memberTypes: [
'signature',
'public-field', // = ["public-static-field", "public-instance-field"]
'protected-field', // = ["protected-static-field", "protected-instance-field"]
'private-field', // = ["private-static-field", "private-instance-field"]
'constructor',
'public-method', // = ["public-static-method", "public-instance-method"]
'protected-method', // = ["protected-static-method", "protected-instance-method"]
'private-method', // = ["private-static-method", "private-instance-method"]
],
order: 'alphabetically',
},
},
],
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/no-inferrable-types': ['off'],
'@typescript-eslint/no-unused-vars': [ 'error', { argsIgnorePattern: '^_', varsIgnorePattern: 'TestRouter' } ],
'@typescript-eslint/no-use-before-define': ['off'],
'@typescript-eslint/semi': [ 'error', 'always' ],
'array-bracket-spacing': [ 'error', 'always', { singleValue: false } ],
'arrow-body-style': [ 'error', 'as-needed' ],
'computed-property-spacing': [ 'error', 'never' ],
'func-style': [ 'warn', 'expression' ],
indent: [ 'error', 2, { SwitchCase: 1 } ],
'keyword-spacing': 'error',
'newline-before-return': 2,
'no-console': 0,
'no-multi-spaces': [ 'error', { ignoreEOLComments: false } ],
'no-multiple-empty-lines': [ 'error', { max: 1, maxBOF: 0 } ],
'no-throw-literal': 'error',
'object-curly-spacing': [ 'error', 'always' ],
'prefer-arrow-callback': 'error',
quotes: [ 'error', 'single', { allowTemplateLiterals: true } ],
semi: [ 'error', 'always' ],
},
};
28 changes: 28 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Build

on:
push:
branches:
- "**"
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 20

- name: Install dependencies and build
run: |
npm install
npm run build

- name: Run tests
run: |
npm run test
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
# IntelliJ
/.idea
*.iml
/lib

# Visual Studio Code
/.vscode
Expand Down
21 changes: 21 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
src
tests
jest.config.js
tsconfig.json
.vscode
.github
.gradle
node_modules
scripts
.idea
.vscode
coverage
tslint.json
tsconfig.json
MakeFile
jest.config.js
.npmignore
.eslintignore
.huskyrc.js
.eslintrc.json
examples
2 changes: 1 addition & 1 deletion CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# Global owners
* [ @Evernorth/team-name or each @username ]
* @karthikeyanjp
35 changes: 19 additions & 16 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
# Guidance on how to contribute
# Contributing

Include information that will help a contributor understand expectations and be successful, such as the examples below.
> Want to see a good real world example? Take a look at the [CONTRIBUTING.adoc](https://github.com/spring-projects/spring-boot/blob/main/CONTRIBUTING.adoc) for spring-boot.
Thanks for your interest in contributing to this project!

* Where to ask Questions? Please make sure it is SEARCHABLE
* Who are the TC’s (Trusted Committers)?
* How to file an Issue
* How to file a PR
* Dependencies
* Style Guide / Coding standards
* Developer Environment
* Branching/ versioning
* Features
* Testing
* Roadmap
* Calendar
* Links to other documentation
We welcome any kind of contribution including:

- Documentation
- Examples
- New features and feature requests
- Bug fixes

Please open Pull Requests for small changes.

For larger changes please submit an issue with additional details.

This issue should outline the following:

- The use case that your changes are applicable to.
- Steps to reproduce the issue(s) if applicable.
- Detailed description of what your changes would entail.
- Alternative solutions or approaches if applicable.
45 changes: 44 additions & 1 deletion INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,46 @@
# Installation instructions

Detailed instructions on how to install, configure, and get the project running. If the instructions are minimal, they can reside in the Readme Installation section.
follow these steps to install and build the library.

## Prerequisites

Ensure you have the following installed on your system:

- **Node.js** (version >= 18)
- **npm** (Node Package Manager)

## Installation

1. Clone the repository:

```shell
git clone https://github.com/Evernorth/aws-lambda-ts-event-handler.git
cd aws-lambda-ts-event-handler

```

2. Install dependencies:
```shell
npm install
```

## Build

To build the project, run:
`shell
npm run build
`
This will compile the TypeScript files into JavaScript and output them to the lib directory.

## Additional Scripts

- Watch for changes and rebuild automatically:

```shell
npm run watch:build
```

- Run Tests
```shell
npm test
```
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright © [ Year or Years Range of the Work ] Evernorth Strategic Development, Inc.
Copyright © 2025 Evernorth Strategic Development, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
4 changes: 2 additions & 2 deletions NOTICE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[ Project Repo Name ]
[ aws-lambda-ts-lambda-handler ]

Copyright (c) [ Year or Years Range of the Work ] Evernorth Strategic Development, Inc.
Copyright (c) 2025 Evernorth Strategic Development, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
Loading