open-index/open-npm huggingface dataset:
npm package: @financica/ubl
Description: UBL (Universal Business Language) invoice XML parser for TypeScript
Latest version: 0.3.1

# @ingram-tech/ubl

TypeScript parser for [UBL (Universal Business Language)](https://www.oasis-open.org/committees/ubl/) invoice XML documents. Parses UBL 2.1 Invoice and CreditNote documents into typed objects, with an optional normalization layer that produces a flat DTO suitable for database storage or API responses.

## Installation

```bash
npm install @ingram-tech/ubl
```

## Usage

### Parse UBL XML

```typescript
import { parseUblInvoice } from "@ingram-tech/ubl";

const xml = `<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" ...>
  <cbc:ID>INV-001</cbc:ID>
  ...
</Invoice>`;

const invoice = parseUblInvoice(xml);
// invoice.id => "INV-001"
// invoice.seller.name => "Acme BV"
// invoice.lines[0].description => "Consulting services"
// invoice.monetaryTotal.payableAmount => 121
```

Returns a typed `UblInvoice` object, or `null` if the XML is not a valid UBL Invoice/CreditNote.

### Normalize to DTO

```typescript
import { normalizeUblResponse } from "@ingram-tech/ubl";

const { extracted, rawPayload } = normalizeUblResponse(xml, "doc-123");
// extracted.invoice.invoice_number => "INV-001"
// extracted.invoice.supplier.name => "Acme BV"
// extracted.line_items[0].tax_rate => 21
```

### Parse from raw bytes

```typescript
import { parseUblInvoiceDocument } from "@ingram-tech/ubl";

const result = parseUblInvoiceDocument({
	bytes: new Uint8Array(buffer),
	documentId: "doc-123",
	mimeType: "application/xml",
});
```

Handles UTF-8 BOM stripping automatically.

## Supported document types

- UBL 2.1 Invoice
- UBL 2.1 CreditNote

## Parsed fields

Parties (seller/buyer), addresses, contacts, endpoint IDs, line items with quantities/prices/tax, allowance/charge at both header and line level, tax subtotals, monetary totals, payment means (including multiple), payment terms, invoice period, delivery information, order/contract/project references, notes, and embedded attachments.

## Development

```bash
npm test          # run tests in watch mode
npm run test:run  # run tests once
npm run lint      # eslint
npm run format    # prettier
npm run build     # build to dist/
npm run ci        # type-check + lint + test + build
```
npm package: @finanfut/sdk
Description: Official FinanFut Intelligence TypeScript SDK
Author: FinanFut
Latest version: 0.1.6

# @finanfut/sdk — FinanFut Intelligence TypeScript SDK

Official TypeScript SDK for **FinanFut Intelligence**, a modular AI orchestration platform with agents, memory, contexts and structured actions.

This SDK provides a high-level client to interact with FinanFut Intelligence:
- Unified `interact` API for chat and actions
- Application and agent management
- Memory (settings + records)
- Contexts (documents & sessions)
- Billing & usage
- Async requests and developer analytics

Supports **Node.js ≥ 18** and **TypeScript ≥ 5**.

---

## Installation

```bash
npm install @finanfut/sdk
```

---

## Quickstart

```ts
import { FinanFutClient } from "@finanfut/sdk";

const client = new FinanFutClient({
  apiKey: "YOUR_API_KEY",
  applicationId: "YOUR_APPLICATION_ID",
});

const response = await client.interact.query("Hello from TypeScript!");
console.log(response.answer);
```

---

## Configuration (optional)

### Environment variables
You can configure the SDK using:

- `FINANFUT_API_KEY`
- `FINANFUT_APPLICATION_ID`
- `FINANFUT_API_URL`

Example:

```ts
const client = new FinanFutClient(); // auto-loads env vars
```

---

## Agents & Intents

```ts
const agents = await client.agents.list();

const response = await client.interact.query({
  query: "Add an event to my calendar",
  applicationAgentId: "UUID",
  intentId: "UUID",
});

console.log(response.answer);
```

---

## Memory API

```ts
const settings = await client.memory.settings.get("APP_UUID");

const records = await client.memory.records.query(
  "APP_UUID",
  "AGENT_UUID",
  "What was the last scheduled event?"
);
```

---

## Billing & Usage

```ts
const usage = await client.billing.getUsage();
console.log("Tokens used:", usage.tokensUsed);
```

---

## License

This package is published under the **MIT License**.
npm package: @finansystech/oidc-express-server
Description: Express Server integrated with OIDC Authentication and Authorization with proxy server
Author: Diogo Henrique Kulaif
Latest version: 1.0.1

# oidc-express-server

This project was created to make it easier for developers to integrate their web server with an OIDC Compliant IAM. Furthermore, this server helps frontend developers such as Vue, React and others to use their proxy to access APIs protected by the Authorization Server OIDC.

```javascript
require('dotenv').config();
const server = require("../index");
const logger = require("../src/utils/logger");

// TODO Validate all env variables
const LISTEN_PORT = process.env.WEBSERVER_LISTEN_PORT || 3000
const APP_ROOT_PATH = process.env.WEBSERVER_APP_ROOT_PATH || "app";
const APP_CONTEXT_PATH = process.env.WEBSERVER_APP_CONTEXT_PATH || "";
const PUBLIC_PATHS = process.env.WEBSERVER_SECURITY_PUBLIC_PATHS;
const SECURITY_ENABLED = process.env.WEBSERVER_SECURITY_ENABLED || "false";
const OIDC_DISCOVERY_URL = process.env.WEBSERVER_SECURITY_OIDC_DISCOVERY_URL;
const OAUTH2_REDIRECT_URI = process.env.WEBSERVER_SECURITY_OAUTH2_REDIRECT_URI;
const OAUTH2_POST_LOGOUT_REDIRECT_URI = process.env.WEBSERVER_SECURITY_OAUTH2_POST_LOGOUT_REDIRECT_URI;
const OAUTH2_CLIENT_ID = process.env.WEBSERVER_SECURITY_OAUTH2_CLIENT_ID;
const OAUTH2_CLIENT_SECRET = process.env.WEBSERVER_SECURITY_OAUTH2_CLIENT_SECRET;
const PROTECTED_PATHS = process.env.WEBSERVER_SECURITY_PROTECTED_PATHS;

let options = {
    appRootPath: APP_ROOT_PATH,
    appContextPath: APP_CONTEXT_PATH,
    protectedPath: PROTECTED_PATHS,
    oidc:{
        enabled: (SECURITY_ENABLED === "true"),
        discoveryUrl: OIDC_DISCOVERY_URL,
        client_id: OAUTH2_CLIENT_ID,
        client_secret: OAUTH2_CLIENT_SECRET,
        redirect_uris: [ OAUTH2_REDIRECT_URI ],
        post_logout_redirect_uris: [ OAUTH2_POST_LOGOUT_REDIRECT_URI ],
    },
    proxy:{
        "/api":{
            target: "${PROXY_API_HOST}",
            options:{},
            authorization: true //enables header bearer token
        }
    }
}

server(options, (app)=>{
    app.listen(LISTEN_PORT, () => {
        logger.info(`Server is running on port ${LISTEN_PORT}`);
    });
});
```
npm package: @finanzritter/nativescript-pdf-view
Description: A basic PDF viewer plugin for NativeScript, to display PDF documents on iOS and Android.
Author: FinanzRitter
Latest version: 3.0.3

# NativeScript PDFView

[![npm](https://img.shields.io/npm/v/@finanzritter/nativescript-pdf-view.svg)](https://www.npmjs.com/package/@finanzritter/nativescript-pdf-view)
[![npm](https://img.shields.io/npm/dt/@finanzritter/nativescript-pdf-view.svg?label=npm%20downloads)](https://www.npmjs.com/package/@finanzritter/nativescript-pdf-view)

:construction: **Work in progress**

This package was forked from the unmaintained package
[madmas/nativescript-pdf-view](https://github.com/madmas/nativescript-pdf-view) which in turn is a
fork of [Merott/nativescript-pdf-view](https://github.com/Merott/nativescript-pdf-view). We are
currently cleaning up and updating the code.

---

A minimal PDF view implementation that does only one thing, and that is to display PDF files in the simplest way possible. It conveniently uses the iOS `WKWebView`, and for Android it uses [`AndroidPdfViewer`](https://github.com/barteksc/AndroidPdfViewer).

This plugin does the bare minimum required to render the PDF, no configuration options, and no error handling have been built yet. I welcome all Pull Requests!

My aim is to keep the features consistent across iOS and Android.

## Installation

```
tns plugin add @finanzritter/nativescript-pdf-view
```

## Usage

### Vanilla NativeScript

```xml
<Page
  xmlns="http://schemas.nativescript.org/tns.xsd"
  xmlns:pdf="@finanzritter/nativescript-pdf-view"
  loaded="pageLoaded">
  <pdf:PDFView src="{{ pdfUrl }}" load="{{ onLoad }}" />
</Page>
```

### Angular NativeScript

```ts
import { PDFView } from '@finanzritter/nativescript-pdf-view';
import { registerElement } from 'nativescript-angular';
registerElement('PDFView', () => PDFView);
```

```html
<PDFView [src]="src" (load)="onLoad()"></PDFView>
```

### Vue.js NativeScript

```ts
import Vue from 'nativescript-vue';
Vue.registerElement('PDFView', () => require('@finanzritter/nativescript-pdf-view').PDFView)
```

```html
<PDFView :src="pdfUrl" :enableAnnotationRendering="true" />
```

## Demo

Check out the [demo](./demo) folder for a demo application using this plugin. You can run the demo by executing `npm run demo.ios` and `npm run demo.android` from the root directory of the project.

## Demo Vue

Check out the [demo-vue](./demo-vue) folder for a demo application built with Vue.js using this plugin. You can run the demo by executing `npm run demo-vue.ios` and `npm run demo-vue.android` from the root directory of the project.

## Credits

- **@Merott**: for being the original author of this plugin [Merott/nativescript-pdf-view](https://github.com/Merott/nativescript-pdf-view)
- **@madmas**: for maintaining it [madmas/nativescript-pdf-view](https://github.com/madmas/nativescript-pdf-view)
npm package: @finapi/embeddable-web-form
Description: A Javascript library for integrating the finAPI Embeddable Web Form
Author: support@finapi.io
Latest version: 2.88.2

# General Information
You can integrate the embeddable web-form by using our npm package.

The package contains two entry points - the Javascript file, and the Typescript file.
Which entry point to take is up to you - if your application supports the Typescript language then feel free
to use the **finapi-embeddable-web-form.component.ts** file.
If your application doesn't support the Typescript language - please use the **finapi-embeddable-web-form.js**
file to import the library.

In order to use the latest version of our package,
please set the version value as **'latest'** in your main package.json file.

# Integration Example
- Please consider the following as an example of such integration between the embeddable web-form and an Angular app:

```
import {Component, OnInit} from '@angular/core';
import {WebFormBuilder} from "@finapi/embeddable-web-form/finapi-embeddable-web-form";

@Component({
    selector: 'app-webform',
    templateUrl: '../../../node_modules/@finapi/embeddable-web-form/finapi-embeddable-web-form.component.html',
})
export class WebformComponent implements OnInit {
    private webFormToken: string;
    constructor() {
        this.webFormToken = 'web-form-token was here';
    }

    ngOnInit(): void {
        console.log('WebForm library has been imported');

        var webFormComponents =
            new WebFormBuilder(this.webFormToken, 'http://kraken:8085')
                .withCallbackUrl('http://127.0.0.1/dummy')
                .withOwnerDocument(document)
                .build();
        webFormComponents.startWebFormComponents();
    }

}
```

- Another example of integration between the embeddable web-form and a ReactJS application:

``` 
import React from 'react';
import {WebFormBuilder} from '@finapi/embeddable-web-form/finapi-embeddable-web-form'

const serverUrl = 'http://kraken:8085';
const webFormToken = 'whatever';

function getWebForm() {
    let embeddableWebForm =
        new WebFormBuilder(webFormToken, serverUrl)
            .withOwnerDocument(document)
            .build();
    embeddableWebForm.startWebFormComponents();
}

const App = () => {
    return (
        <div>
            <button onClick={() => getWebForm()}>Render finAPI Web Form</button>
            <web-form-element></web-form-element>
        </div>
    );
};

export default App;
```