jmsfwk/adf-builder

A library that simplifies building documents that follow the Atlassian Document Format structure.

1.0.1 2022-06-01 15:47 UTC

This package is auto-updated.

Last update: 2024-04-29 03:41:29 UTC


README

A library that simplifies building documents that follow the Atlassian Document Format structure.

This is based on pyadf (Python) and adf-builder (JavaScript).

Installation

Install the package using

composer require jmsfwk/adf-builder

Usage

use Jmsfwk\Adf\Document;

$doc = new Document();
$doc->paragraph()
    ->text('See the ')
    ->link('documention', 'https://example.com')
    ->text(' ')
    ->emoji('smile');

Serialization

A document can be serialized in different ways:

$doc = new Document();
$doc->toJson();      // Returns a compact JSON string
json_encode($doc); // Equivalent to '$doc->toString()'

Examples

Simple paragraphs

In order to get an output like:

Hello @joe, please carefully read this contract

You would use:

use Jmsfwk\Adf\Document;

$doc = new Document();
$doc->paragraph()
    ->text('Hello ')
    ->mention($id, 'joe')
    ->text(', please ')
    ->em('carefully')
    ->text(' read ')
    ->link('this contract', 'https://www.example.com/contract');