Compare commits
7 Commits
feature/1-
...
feature/10
| Author | SHA1 | Date | |
|---|---|---|---|
| 2248b1e6d7 | |||
| e192dcdb05 | |||
| fcffd65d33 | |||
| 09f398c63f | |||
| b3e1b31750 | |||
| 17b57648d5 | |||
| ff8aaba741 |
@@ -15,8 +15,11 @@ export class AuthGuard extends PassportAuthGuard('azure-ad') implements CanActiv
|
||||
'isPublic',
|
||||
context.getHandler()
|
||||
);
|
||||
const req = context.switchToHttp().getRequest();
|
||||
const authHeader = req.headers.authorization;
|
||||
const token = authHeader && authHeader.split(' ')[1];
|
||||
|
||||
if (isPublic) {
|
||||
if (isPublic && !token) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
1
libs/modules/src/azTable/az-table.constants.ts
Normal file
1
libs/modules/src/azTable/az-table.constants.ts
Normal file
@@ -0,0 +1 @@
|
||||
export const TABLE_OPTIONS = 'TABLE_OPTIONS';
|
||||
3
libs/modules/src/azTable/az-table.interface.ts
Normal file
3
libs/modules/src/azTable/az-table.interface.ts
Normal file
@@ -0,0 +1,3 @@
|
||||
export interface TableOptions {
|
||||
connectionString;
|
||||
}
|
||||
21
libs/modules/src/azTable/az-table.module.ts
Normal file
21
libs/modules/src/azTable/az-table.module.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { Module, DynamicModule } from '@nestjs/common';
|
||||
import { TableService } from './az-table.service';
|
||||
import { TableOptions } from './az-table.interface';
|
||||
import { TABLE_OPTIONS } from './az-table.constants';
|
||||
|
||||
@Module({})
|
||||
export class TableModule {
|
||||
static register(options: TableOptions): DynamicModule {
|
||||
return {
|
||||
module: TableModule,
|
||||
providers: [
|
||||
{
|
||||
provide: TABLE_OPTIONS,
|
||||
useValue: options
|
||||
},
|
||||
TableService
|
||||
],
|
||||
exports: [TableService]
|
||||
}
|
||||
}
|
||||
}
|
||||
18
libs/modules/src/azTable/az-table.service.ts
Normal file
18
libs/modules/src/azTable/az-table.service.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import { Inject, Injectable } from '@nestjs/common';
|
||||
import { TableOptions } from './az-table.interface';
|
||||
import { TABLE_OPTIONS } from './az-table.constants';
|
||||
import { TableClient } from '@azure/data-tables';
|
||||
|
||||
@Injectable()
|
||||
export class TableService {
|
||||
constructor(
|
||||
@Inject(TABLE_OPTIONS)
|
||||
private tablesOptions: TableOptions
|
||||
) {}
|
||||
|
||||
async getTableClient(tableName: string): Promise<TableClient> {
|
||||
const tableClient: TableClient = new TableClient(this.tablesOptions.connectionString, tableName);
|
||||
|
||||
return tableClient;
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,12 @@
|
||||
export * from './azAppConfig/az-app-config.module';
|
||||
export * from './azAppConfig/az-app-config.service';
|
||||
|
||||
// Azure Data Tables
|
||||
|
||||
export * from './azTable/az-table.module';
|
||||
export * from './azTable/az-table.service';
|
||||
export { TableClient } from '@azure/data-tables';
|
||||
|
||||
// Auth
|
||||
|
||||
export * from './auth/auth.module';
|
||||
|
||||
70
package-lock.json
generated
70
package-lock.json
generated
@@ -1,15 +1,16 @@
|
||||
{
|
||||
"name": "@noahspan/noahspan-modules",
|
||||
"version": "0.2.9",
|
||||
"version": "0.3.5",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@noahspan/noahspan-modules",
|
||||
"version": "0.2.9",
|
||||
"version": "0.3.5",
|
||||
"license": "UNLICENSED",
|
||||
"dependencies": {
|
||||
"@azure/app-configuration": "^1.6.0",
|
||||
"@azure/data-tables": "^13.2.2",
|
||||
"@azure/identity": "^4.2.0",
|
||||
"@azure/msal-node": "^2.9.2",
|
||||
"@microsoft/microsoft-graph-client": "^3.0.7",
|
||||
@@ -438,6 +439,45 @@
|
||||
"node": ">=18.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/core-xml": {
|
||||
"version": "1.4.3",
|
||||
"resolved": "https://registry.npmjs.org/@azure/core-xml/-/core-xml-1.4.3.tgz",
|
||||
"integrity": "sha512-D6G7FEmDiTctPKuWegX2WTrS1enKZwqYwdKTO6ZN6JMigcCehlT0/CYl+zWpI9vQ9frwwp7GQT3/owaEXgnOsA==",
|
||||
"dependencies": {
|
||||
"fast-xml-parser": "^4.3.2",
|
||||
"tslib": "^2.6.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/data-tables": {
|
||||
"version": "13.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@azure/data-tables/-/data-tables-13.2.2.tgz",
|
||||
"integrity": "sha512-Dq2Aq0mMMF0BPzYQKdBY/OtO7VemP/foh6z+mJpUO1hRL+65C1rGQUJf20LJHotSyU8wHb4HJzOs+Z50GXSy1w==",
|
||||
"dependencies": {
|
||||
"@azure/core-auth": "^1.3.0",
|
||||
"@azure/core-client": "^1.0.0",
|
||||
"@azure/core-paging": "^1.1.1",
|
||||
"@azure/core-rest-pipeline": "^1.1.0",
|
||||
"@azure/core-tracing": "^1.0.0",
|
||||
"@azure/core-xml": "^1.0.0",
|
||||
"@azure/logger": "^1.0.0",
|
||||
"tslib": "^2.2.0",
|
||||
"uuid": "^8.3.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/data-tables/node_modules/uuid": {
|
||||
"version": "8.3.2",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
},
|
||||
"node_modules/@azure/identity": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@azure/identity/-/identity-4.2.0.tgz",
|
||||
@@ -4772,6 +4812,27 @@
|
||||
"resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
|
||||
"integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA=="
|
||||
},
|
||||
"node_modules/fast-xml-parser": {
|
||||
"version": "4.4.1",
|
||||
"resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
|
||||
"integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/NaturalIntelligence"
|
||||
},
|
||||
{
|
||||
"type": "paypal",
|
||||
"url": "https://paypal.me/naturalintelligence"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"strnum": "^1.0.5"
|
||||
},
|
||||
"bin": {
|
||||
"fxparser": "src/cli/cli.js"
|
||||
}
|
||||
},
|
||||
"node_modules/fastq": {
|
||||
"version": "1.17.1",
|
||||
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
|
||||
@@ -8644,6 +8705,11 @@
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/strnum": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
|
||||
"integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA=="
|
||||
},
|
||||
"node_modules/superagent": {
|
||||
"version": "8.1.2",
|
||||
"resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@noahspan/noahspan-modules",
|
||||
"version": "0.3.5",
|
||||
"version": "0.4.0",
|
||||
"description": "",
|
||||
"author": "",
|
||||
"license": "UNLICENSED",
|
||||
@@ -25,6 +25,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@azure/app-configuration": "^1.6.0",
|
||||
"@azure/data-tables": "^13.2.2",
|
||||
"@azure/identity": "^4.2.0",
|
||||
"@azure/msal-node": "^2.9.2",
|
||||
"@microsoft/microsoft-graph-client": "^3.0.7",
|
||||
|
||||
Reference in New Issue
Block a user