4
0

update 2023-07-12 09:14:53

This commit is contained in:
Robot 2023-07-12 09:14:53 +02:00
parent 65b3fad842
commit ed1d74c6f6
Signed by: Robot
GPG Key ID: 14DECD44E7E1BB95
34 changed files with 1484 additions and 25 deletions

View File

@ -27,6 +27,7 @@ This repository contains an index (see below) of all the approved powers within
- **abstract class Factory** | [Details](src/11892cfa-374e-4e3f-b0bc-531871c822d9) | [Code](src/11892cfa-374e-4e3f-b0bc-531871c822d9/code.php) | [Settings](src/11892cfa-374e-4e3f-b0bc-531871c822d9/settings.json) | Super__11892cfa_374e_4e3f_b0bc_531871c822d9__Power
- **abstract class Openai** | [Details](src/f722bb8b-d377-4425-b1e4-2fe1734a3664) | [Code](src/f722bb8b-d377-4425-b1e4-2fe1734a3664/code.php) | [Settings](src/f722bb8b-d377-4425-b1e4-2fe1734a3664/settings.json) | Super__f722bb8b_d377_4425_b1e4_2fe1734a3664__Power
- **final class AI** | [Details](src/f3757646-bc63-4f11-98c1-a2663180ab5e) | [Code](src/f3757646-bc63-4f11-98c1-a2663180ab5e/code.php) | [Settings](src/f3757646-bc63-4f11-98c1-a2663180ab5e/settings.json) | Super__f3757646_bc63_4f11_98c1_a2663180ab5e__Power
- **final class DailyScripture** | [Details](src/90f2ee7a-c041-4316-ad54-af4f97fa3003) | [Code](src/90f2ee7a-c041-4316-ad54-af4f97fa3003/code.php) | [Settings](src/90f2ee7a-c041-4316-ad54-af4f97fa3003/settings.json) | Super__90f2ee7a_c041_4316_ad54_af4f97fa3003__Power
- **final class Search** | [Details](src/8336e3c4-f11b-41bc-a2b1-976f99442a84) | [Code](src/8336e3c4-f11b-41bc-a2b1-976f99442a84/code.php) | [Settings](src/8336e3c4-f11b-41bc-a2b1-976f99442a84/settings.json) | Super__8336e3c4_f11b_41bc_a2b1_976f99442a84__Power
- **final class Watcher** | [Details](src/f815fb33-f721-48a5-a84e-53f1986e8881) | [Code](src/f815fb33-f721-48a5-a84e-53f1986e8881/code.php) | [Settings](src/f815fb33-f721-48a5-a84e-53f1986e8881/settings.json) | Super__f815fb33_f721_48a5_a84e_53f1986e8881__Power
@ -41,6 +42,11 @@ This repository contains an index (see below) of all the approved powers within
- **final class Chapters** | [Details](src/a752e4b2-9b5e-4188-8d33-3799c46d5119) | [Code](src/a752e4b2-9b5e-4188-8d33-3799c46d5119/code.php) | [Settings](src/a752e4b2-9b5e-4188-8d33-3799c46d5119/settings.json) | Super__a752e4b2_9b5e_4188_8d33_3799c46d5119__Power
- **final class Translations** | [Details](src/be0cae8b-4b78-4f59-b97b-9e31ee6f52e0) | [Code](src/be0cae8b-4b78-4f59-b97b-9e31ee6f52e0/code.php) | [Settings](src/be0cae8b-4b78-4f59-b97b-9e31ee6f52e0/settings.json) | Super__be0cae8b_4b78_4f59_b97b_9e31ee6f52e0__Power
- **final class Verses** | [Details](src/afa508bf-78f8-4616-97cc-f2809584c086) | [Code](src/afa508bf-78f8-4616-97cc-f2809584c086/code.php) | [Settings](src/afa508bf-78f8-4616-97cc-f2809584c086/settings.json) | Super__afa508bf_78f8_4616_97cc_f2809584c086__Power
- **Namespace**: [VDM\Joomla\GetBible\Data](#vdm-joomla-getbible-data)
- **final class Chapter** | [Details](src/4a4c786d-51f4-421a-aa61-262dfd071880) | [Code](src/4a4c786d-51f4-421a-aa61-262dfd071880/code.php) | [Settings](src/4a4c786d-51f4-421a-aa61-262dfd071880/settings.json) | Super__4a4c786d_51f4_421a_aa61_262dfd071880__Power
- **final class Prompt** | [Details](src/3f785d63-a592-463d-9f5f-b2b5a8edd561) | [Code](src/3f785d63-a592-463d-9f5f-b2b5a8edd561/code.php) | [Settings](src/3f785d63-a592-463d-9f5f-b2b5a8edd561/settings.json) | Super__3f785d63_a592_463d_9f5f_b2b5a8edd561__Power
- **final class Translation** | [Details](src/c4098e1a-46dd-4d60-9277-b3668a09edc8) | [Code](src/c4098e1a-46dd-4d60-9277-b3668a09edc8/code.php) | [Settings](src/c4098e1a-46dd-4d60-9277-b3668a09edc8/settings.json) | Super__c4098e1a_46dd_4d60_9277_b3668a09edc8__Power
- **Namespace**: [VDM\Joomla\GetBible\Database](#vdm-joomla-getbible-database)
- **final class Insert** | [Details](src/a07d90f6-6ff2-40a1-99c1-0f2cf33c9adf) | [Code](src/a07d90f6-6ff2-40a1-99c1-0f2cf33c9adf/code.php) | [Settings](src/a07d90f6-6ff2-40a1-99c1-0f2cf33c9adf/settings.json) | Super__a07d90f6_6ff2_40a1_99c1_0f2cf33c9adf__Power
@ -52,8 +58,10 @@ This repository contains an index (see below) of all the approved powers within
- **final class Upsert** | [Details](src/91b37bd7-b314-48be-91cf-434ec823bd80) | [Code](src/91b37bd7-b314-48be-91cf-434ec823bd80/code.php) | [Settings](src/91b37bd7-b314-48be-91cf-434ec823bd80/settings.json) | Super__91b37bd7_b314_48be_91cf_434ec823bd80__Power
- **Namespace**: [VDM\Joomla\GetBible\Service](#vdm-joomla-getbible-service)
- **class AI** | [Details](src/b2c9493f-692b-426b-af22-c6865f76c2bb) | [Code](src/b2c9493f-692b-426b-af22-c6865f76c2bb/code.php) | [Settings](src/b2c9493f-692b-426b-af22-c6865f76c2bb/settings.json) | Super__b2c9493f_692b_426b_af22_c6865f76c2bb__Power
- **class Api** | [Details](src/b32eea04-6b9c-469d-94db-35d610686cf1) | [Code](src/b32eea04-6b9c-469d-94db-35d610686cf1/code.php) | [Settings](src/b32eea04-6b9c-469d-94db-35d610686cf1/settings.json) | Super__b32eea04_6b9c_469d_94db_35d610686cf1__Power
- **class App** | [Details](src/56465044-94ed-4e00-b6db-160c67163df8) | [Code](src/56465044-94ed-4e00-b6db-160c67163df8/code.php) | [Settings](src/56465044-94ed-4e00-b6db-160c67163df8/settings.json) | Super__56465044_94ed_4e00_b6db_160c67163df8__Power
- **class Data** | [Details](src/3439e63b-d8f1-42ce-a765-60d56b1fbe21) | [Code](src/3439e63b-d8f1-42ce-a765-60d56b1fbe21/code.php) | [Settings](src/3439e63b-d8f1-42ce-a765-60d56b1fbe21/settings.json) | Super__3439e63b_d8f1_42ce_a765_60d56b1fbe21__Power
- **class Database** | [Details](src/51bb0397-fa7c-4f7a-a4c5-1f95fdacad38) | [Code](src/51bb0397-fa7c-4f7a-a4c5-1f95fdacad38/code.php) | [Settings](src/51bb0397-fa7c-4f7a-a4c5-1f95fdacad38/settings.json) | Super__51bb0397_fa7c_4f7a_a4c5_1f95fdacad38__Power
- **class Model** | [Details](src/116eb429-bc51-4d14-b9aa-7145c86a29d1) | [Code](src/116eb429-bc51-4d14-b9aa-7145c86a29d1/code.php) | [Settings](src/116eb429-bc51-4d14-b9aa-7145c86a29d1/settings.json) | Super__116eb429_bc51_4d14_b9aa_7145c86a29d1__Power
- **class Openai** | [Details](src/ac5c7679-dd6e-4817-8e48-489e521122f1) | [Code](src/ac5c7679-dd6e-4817-8e48-489e521122f1/code.php) | [Settings](src/ac5c7679-dd6e-4817-8e48-489e521122f1/settings.json) | Super__ac5c7679_dd6e_4817_8e48_489e521122f1__Power

View File

@ -0,0 +1,77 @@
```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# class Data (Details)
> namespace: **VDM\Joomla\GetBible\Service**
```uml
@startuml
class Data #Gold {
+ register(Container $container) : void
+ getConfig(Container $container) : Config
+ getTable(Container $container) : Table
+ getTranslation(Container $container) : Translation
+ getChapter(Container $container) : Chapter
+ getPrompt(Container $container) : Prompt
}
note right of Data::register
Registers the service provider with a DI container.
since: 3.2.0
return: void
end note
note right of Data::getConfig
Get the Config class
since: 2.0.1
return: Config
end note
note right of Data::getTable
Get the Table class
since: 2.0.1
return: Table
end note
note right of Data::getTranslation
Get the Translation class
since: 3.2.0
return: Translation
end note
note right of Data::getChapter
Get the Chapter class
since: 3.2.0
return: Chapter
end note
note right of Data::getPrompt
Get the Prompt class
since: 3.2.0
return: Prompt
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)

View File

@ -0,0 +1,128 @@
<?php
/**
* @package GetBible
*
* @created 30th May, 2023
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git GetBible <https://git.vdm.dev/getBible>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\GetBible\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\GetBible\Table;
use VDM\Joomla\GetBible\Config;
use VDM\Joomla\GetBible\Data\Translation;
use VDM\Joomla\GetBible\Data\Chapter;
use VDM\Joomla\GetBible\Data\Prompt;
/**
* The GetBible Data Service
*
* @since 3.2.0
*/
class Data implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(Config::class, 'GetBible.Config')
->share('GetBible.Config', [$this, 'getConfig'], true);
$container->alias(Table::class, 'GetBible.Table')
->share('GetBible.Table', [$this, 'getTable'], true);
$container->alias(Translation::class, 'GetBible.Translation')
->share('GetBible.Translation', [$this, 'getTranslation'], true);
$container->alias(Chapter::class, 'GetBible.Chapter')
->share('GetBible.Chapter', [$this, 'getChapter'], true);
$container->alias(Prompt::class, 'GetBible.Prompt')
->share('GetBible.Prompt', [$this, 'getPrompt'], true);
}
/**
* Get the Config class
*
* @param Container $container The DI container.
*
* @return Config
* @since 2.0.1
*/
public function getConfig(Container $container): Config
{
return new Config();
}
/**
* Get the Table class
*
* @param Container $container The DI container.
*
* @return Table
* @since 2.0.1
*/
public function getTable(Container $container): Table
{
return new Table();
}
/**
* Get the Translation class
*
* @param Container $container The DI container.
*
* @return Translation
* @since 3.2.0
*/
public function getTranslation(Container $container): Translation
{
return new Translation(
$container->get('GetBible.Load')
);
}
/**
* Get the Chapter class
*
* @param Container $container The DI container.
*
* @return Chapter
* @since 3.2.0
*/
public function getChapter(Container $container): Chapter
{
return new Chapter(
$container->get('GetBible.Load')
);
}
/**
* Get the Prompt class
*
* @param Container $container The DI container.
*
* @return Prompt
* @since 3.2.0
*/
public function getPrompt(Container $container): Prompt
{
return new Prompt(
$container->get('GetBible.Load')
);
}
}

View File

@ -0,0 +1,96 @@
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(Config::class, 'GetBible.Config')
->share('GetBible.Config', [$this, 'getConfig'], true);
$container->alias(Table::class, 'GetBible.Table')
->share('GetBible.Table', [$this, 'getTable'], true);
$container->alias(Translation::class, 'GetBible.Translation')
->share('GetBible.Translation', [$this, 'getTranslation'], true);
$container->alias(Chapter::class, 'GetBible.Chapter')
->share('GetBible.Chapter', [$this, 'getChapter'], true);
$container->alias(Prompt::class, 'GetBible.Prompt')
->share('GetBible.Prompt', [$this, 'getPrompt'], true);
}
/**
* Get the Config class
*
* @param Container $container The DI container.
*
* @return Config
* @since 2.0.1
*/
public function getConfig(Container $container): Config
{
return new Config();
}
/**
* Get the Table class
*
* @param Container $container The DI container.
*
* @return Table
* @since 2.0.1
*/
public function getTable(Container $container): Table
{
return new Table();
}
/**
* Get the Translation class
*
* @param Container $container The DI container.
*
* @return Translation
* @since 3.2.0
*/
public function getTranslation(Container $container): Translation
{
return new Translation(
$container->get('GetBible.Load')
);
}
/**
* Get the Chapter class
*
* @param Container $container The DI container.
*
* @return Chapter
* @since 3.2.0
*/
public function getChapter(Container $container): Chapter
{
return new Chapter(
$container->get('GetBible.Load')
);
}
/**
* Get the Prompt class
*
* @param Container $container The DI container.
*
* @return Prompt
* @since 3.2.0
*/
public function getPrompt(Container $container): Prompt
{
return new Prompt(
$container->get('GetBible.Load')
);
}

View File

@ -0,0 +1,42 @@
{
"add_head": "1",
"add_licensing_template": "2",
"extends": "0",
"guid": "3439e63b-d8f1-42ce-a765-60d56b1fbe21",
"implements": [
"-1"
],
"load_selection": null,
"name": "Data",
"power_version": "1.0.0",
"system_name": "Joomla.GetBible.Service.Data",
"type": "class",
"use_selection": {
"use_selection0": {
"use": "ff8d5fdb-2d1f-4178-bd18-a43b8efd1068",
"as": "default"
},
"use_selection1": {
"use": "71075f03-4e77-4fc0-840a-ef55fd9260b2",
"as": "default"
},
"use_selection2": {
"use": "c4098e1a-46dd-4d60-9277-b3668a09edc8",
"as": "default"
},
"use_selection3": {
"use": "4a4c786d-51f4-421a-aa61-262dfd071880",
"as": "default"
},
"use_selection4": {
"use": "3f785d63-a592-463d-9f5f-b2b5a8edd561",
"as": "default"
}
},
"namespace": "VDM\\Joomla\\GetBible\\Service.Data",
"description": "The GetBible Data Service\r\n\r\n@since 3.2.0",
"implements_custom": "ServiceProviderInterface",
"licensing_template": "\/**\r\n * @package GetBible\r\n *\r\n * @created 30th May, 2023\r\n * @author Llewellyn van der Merwe <https:\/\/dev.vdm.io>\r\n * @git GetBible <https:\/\/git.vdm.dev\/getBible>\r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n",
"head": "use Joomla\\DI\\Container;\r\nuse Joomla\\DI\\ServiceProviderInterface;",
"composer": ""
}

View File

@ -0,0 +1,46 @@
```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# final class Prompt (Details)
> namespace: **VDM\Joomla\GetBible\Data**
```uml
@startuml
class Prompt << (F,LightGreen) >> #Green {
# Load $load
# array $prompts
+ __construct(Load $load)
+ get(string $guid) : ?object
}
note right of Prompt::__construct
Constructor
since: 2.0.1
end note
note right of Prompt::get
Get the prompt
since: 2.0.1
return: ?object
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)

View File

@ -0,0 +1,71 @@
<?php
/**
* @package GetBible
*
* @created 30th May, 2023
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git GetBible <https://git.vdm.dev/getBible>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\GetBible\Data;
use VDM\Joomla\GetBible\Database\Load;
/**
* The GetBible Prompt Data
*
* @since 2.0.1
*/
final class Prompt
{
/**
* The Load class
*
* @var Load
* @since 2.0.1
*/
protected Load $load;
/**
* The the prompts
*
* @var array
* @since 2.0.1
*/
protected array $prompts = [];
/**
* Constructor
*
* @param Load $load The load object.
*
* @since 2.0.1
*/
public function __construct(Load $load)
{
$this->load = $load;
}
/**
* Get the prompt
*
* @param string $guid The prompt guid.
*
* @return object|null True on success
* @since 2.0.1
*/
public function get(string $guid): ?object
{
if (!isset($this->prompts[$guid]))
{
$this->prompts[$guid] = $this->load->item(['guid' => $guid], 'prompt');
}
return $this->prompts[$guid];
}
}

View File

@ -0,0 +1,45 @@
/**
* The Load class
*
* @var Load
* @since 2.0.1
*/
protected Load $load;
/**
* The the prompts
*
* @var array
* @since 2.0.1
*/
protected array $prompts = [];
/**
* Constructor
*
* @param Load $load The load object.
*
* @since 2.0.1
*/
public function __construct(Load $load)
{
$this->load = $load;
}
/**
* Get the prompt
*
* @param string $guid The prompt guid.
*
* @return object|null True on success
* @since 2.0.1
*/
public function get(string $guid): ?object
{
if (!isset($this->prompts[$guid]))
{
$this->prompts[$guid] = $this->load->item(['guid' => $guid], 'prompt');
}
return $this->prompts[$guid];
}

View File

@ -0,0 +1,23 @@
{
"add_head": "0",
"add_licensing_template": "2",
"extends": "0",
"guid": "3f785d63-a592-463d-9f5f-b2b5a8edd561",
"implements": null,
"load_selection": null,
"name": "Prompt",
"power_version": "1.0.0",
"system_name": "Joomla.GetBible.Data.Prompt",
"type": "final class",
"use_selection": {
"use_selection0": {
"use": "c03b9c61-17d3-4774-a335-783903719f83",
"as": "default"
}
},
"namespace": "VDM\\Joomla\\GetBible\\Data.Prompt",
"description": "The GetBible Prompt Data\r\n\r\n@since 2.0.1",
"licensing_template": "\/**\r\n * @package GetBible\r\n *\r\n * @created 30th May, 2023\r\n * @author Llewellyn van der Merwe <https:\/\/dev.vdm.io>\r\n * @git GetBible <https:\/\/git.vdm.dev\/getBible>\r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n",
"head": "",
"composer": ""
}

View File

@ -0,0 +1,51 @@
```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# final class Chapter (Details)
> namespace: **VDM\Joomla\GetBible\Data**
```uml
@startuml
class Chapter << (F,LightGreen) >> #Green {
# Load $load
# array $chapters
+ __construct(Load $load)
+ get(string $abbreviation, int $book, ...) : ?object
}
note right of Chapter::__construct
Constructor
since: 2.0.1
end note
note right of Chapter::get
Get the chapter
since: 2.0.1
return: ?object
arguments:
string $abbreviation
int $book
int $chapter
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)

View File

@ -0,0 +1,77 @@
<?php
/**
* @package GetBible
*
* @created 30th May, 2023
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git GetBible <https://git.vdm.dev/getBible>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\GetBible\Data;
use VDM\Joomla\GetBible\Database\Load;
/**
* The GetBible Chapter Data
*
* @since 2.0.1
*/
final class Chapter
{
/**
* The Load class
*
* @var Load
* @since 2.0.1
*/
protected Load $load;
/**
* The chapters
*
* @var array
* @since 2.0.1
*/
protected array $chapters = [];
/**
* Constructor
*
* @param Load $load The load object.
*
* @since 2.0.1
*/
public function __construct(Load $load)
{
$this->load = $load;
}
/**
* Get the chapter
*
* @param string $abbreviation The translation abbreviation.
* @param int $book The book number.
* @param int $chapter The chapter number.
*
* @return object|null True on success
* @since 2.0.1
*/
public function get(string $abbreviation, int $book, int $chapter): ?object
{
if (!isset($this->chapters[$abbreviation . $book . $chapter]))
{
$bucket = $this->load->item(['abbreviation' => $abbreviation, 'book_nr' => $book, 'chapter' => $chapter], 'chapter');
$bucket->book = $this->load->item(['abbreviation' => $abbreviation, 'nr' => $book], 'book');
$bucket->verses = $this->load->items(['abbreviation' => $abbreviation, 'book_nr' => $book, 'chapter' => $chapter], 'verse');
$this->chapters[$abbreviation . $book . $chapter] = $bucket;
}
return $this->chapters[$abbreviation . $book . $chapter];
}
}

View File

@ -0,0 +1,51 @@
/**
* The Load class
*
* @var Load
* @since 2.0.1
*/
protected Load $load;
/**
* The chapters
*
* @var array
* @since 2.0.1
*/
protected array $chapters = [];
/**
* Constructor
*
* @param Load $load The load object.
*
* @since 2.0.1
*/
public function __construct(Load $load)
{
$this->load = $load;
}
/**
* Get the chapter
*
* @param string $abbreviation The translation abbreviation.
* @param int $book The book number.
* @param int $chapter The chapter number.
*
* @return object|null True on success
* @since 2.0.1
*/
public function get(string $abbreviation, int $book, int $chapter): ?object
{
if (!isset($this->chapters[$abbreviation . $book . $chapter]))
{
$bucket = $this->load->item(['abbreviation' => $abbreviation, 'book_nr' => $book, 'chapter' => $chapter], 'chapter');
$bucket->book = $this->load->item(['abbreviation' => $abbreviation, 'nr' => $book], 'book');
$bucket->verses = $this->load->items(['abbreviation' => $abbreviation, 'book_nr' => $book, 'chapter' => $chapter], 'verse');
$this->chapters[$abbreviation . $book . $chapter] = $bucket;
}
return $this->chapters[$abbreviation . $book . $chapter];
}

View File

@ -0,0 +1,23 @@
{
"add_head": "0",
"add_licensing_template": "2",
"extends": "0",
"guid": "4a4c786d-51f4-421a-aa61-262dfd071880",
"implements": null,
"load_selection": null,
"name": "Chapter",
"power_version": "1.0.0",
"system_name": "Joomla.GetBible.Data.Chapter",
"type": "final class",
"use_selection": {
"use_selection0": {
"use": "c03b9c61-17d3-4774-a335-783903719f83",
"as": "default"
}
},
"namespace": "VDM\\Joomla\\GetBible\\Data.Chapter",
"description": "The GetBible Chapter Data\r\n\r\n@since 2.0.1",
"licensing_template": "\/**\r\n * @package GetBible\r\n *\r\n * @created 30th May, 2023\r\n * @author Llewellyn van der Merwe <https:\/\/dev.vdm.io>\r\n * @git GetBible <https:\/\/git.vdm.dev\/getBible>\r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n",
"head": "",
"composer": ""
}

View File

@ -12,7 +12,7 @@
namespace VDM\Joomla\GetBible;
use VDM\Joomla\Utilities\GetHelper;
use VDM\Joomla\Utilities\Component\Helper;
use VDM\Joomla\Abstraction\BaseConfig;

View File

@ -11,7 +11,7 @@
"type": "class",
"use_selection": {
"use_selection0": {
"use": "db87c339-5bb6-4291-a7ef-2c48ea1b06bc",
"use": "640b5352-fb09-425f-a26e-cd44eda03f15",
"as": "default"
}
},

View File

@ -37,7 +37,6 @@ class Openai implements ServiceProviderInterface
*/
public function register(Container $container)
{
$container->alias(Chat::class, 'Openai.Chat')
->share('Openai.Chat', [$this, 'getChat'], true);

View File

@ -8,7 +8,6 @@
*/
public function register(Container $container)
{
$container->alias(Chat::class, 'Openai.Chat')
->share('Openai.Chat', [$this, 'getChat'], true);

View File

@ -0,0 +1,45 @@
```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# class AI (Details)
> namespace: **VDM\Joomla\GetBible\Service**
```uml
@startuml
class AI #Gold {
+ register(Container $container) : void
+ getAI(Container $container) : GetBible
}
note right of AI::register
Registers the service provider with a DI container.
since: 3.2.0
return: void
end note
note right of AI::getAI
Get the GetBible AI class
since: 3.2.0
return: GetBible
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)

View File

@ -0,0 +1,58 @@
<?php
/**
* @package GetBible
*
* @created 30th May, 2023
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git GetBible <https://git.vdm.dev/getBible>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\GetBible\Service;
use Joomla\DI\Container;
use Joomla\DI\ServiceProviderInterface;
use VDM\Joomla\GetBible\AI as GetBible;
/**
* The GetBible AI Service
*
* @since 3.2.0
*/
class AI implements ServiceProviderInterface
{
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(GetBible::class, 'GetBible.AI')
->share('GetBible.AI', [$this, 'getAI'], true);
}
/**
* Get the GetBible AI class
*
* @param Container $container The DI container.
*
* @return GetBible
* @since 3.2.0
*/
public function getAI(Container $container): GetBible
{
return new GetBible(
$container->get('GetBible.Translation'),
$container->get('GetBible.Chapter'),
$container->get('GetBible.Prompt')
);
}
}

View File

@ -0,0 +1,30 @@
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
* @since 3.2.0
*/
public function register(Container $container)
{
$container->alias(GetBible::class, 'GetBible.AI')
->share('GetBible.AI', [$this, 'getAI'], true);
}
/**
* Get the GetBible AI class
*
* @param Container $container The DI container.
*
* @return GetBible
* @since 3.2.0
*/
public function getAI(Container $container): GetBible
{
return new GetBible(
$container->get('GetBible.Translation'),
$container->get('GetBible.Chapter'),
$container->get('GetBible.Prompt')
);
}

View File

@ -0,0 +1,26 @@
{
"add_head": "1",
"add_licensing_template": "2",
"extends": "0",
"guid": "b2c9493f-692b-426b-af22-c6865f76c2bb",
"implements": [
"-1"
],
"load_selection": null,
"name": "AI",
"power_version": "1.0.0",
"system_name": "Joomla.GetBible.Service.AI",
"type": "class",
"use_selection": {
"use_selection0": {
"use": "f3757646-bc63-4f11-98c1-a2663180ab5e",
"as": "GetBible"
}
},
"namespace": "VDM\\Joomla\\GetBible\\Service.AI",
"description": "The GetBible AI Service\r\n\r\n@since 3.2.0",
"implements_custom": "ServiceProviderInterface",
"licensing_template": "\/**\r\n * @package GetBible\r\n *\r\n * @created 30th May, 2023\r\n * @author Llewellyn van der Merwe <https:\/\/dev.vdm.io>\r\n * @git GetBible <https:\/\/git.vdm.dev\/getBible>\r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n",
"head": "use Joomla\\DI\\Container;\r\nuse Joomla\\DI\\ServiceProviderInterface;",
"composer": ""
}

View File

@ -0,0 +1,46 @@
```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# final class Translation (Details)
> namespace: **VDM\Joomla\GetBible\Data**
```uml
@startuml
class Translation << (F,LightGreen) >> #Green {
# Load $load
# array $translations
+ __construct(Load $load)
+ get(string $abbreviation) : ?object
}
note right of Translation::__construct
Constructor
since: 2.0.1
end note
note right of Translation::get
Get the translation
since: 2.0.1
return: ?object
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)

View File

@ -0,0 +1,71 @@
<?php
/**
* @package GetBible
*
* @created 30th May, 2023
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git GetBible <https://git.vdm.dev/getBible>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\GetBible\Data;
use VDM\Joomla\GetBible\Database\Load;
/**
* The GetBible Translation Data
*
* @since 2.0.1
*/
final class Translation
{
/**
* The Load class
*
* @var Load
* @since 2.0.1
*/
protected Load $load;
/**
* The the translations
*
* @var array
* @since 2.0.1
*/
protected array $translations = [];
/**
* Constructor
*
* @param Load $load The load object.
*
* @since 2.0.1
*/
public function __construct(Load $load)
{
$this->load = $load;
}
/**
* Get the translation
*
* @param string $abbreviation The translation abbreviation.
*
* @return object|null True on success
* @since 2.0.1
*/
public function get(string $abbreviation): ?object
{
if (!isset($this->translations[$abbreviation]))
{
$this->translations[$abbreviation] = $this->load->item(['abbreviation' => $abbreviation], 'translation');
}
return $this->translations[$abbreviation];
}
}

View File

@ -0,0 +1,45 @@
/**
* The Load class
*
* @var Load
* @since 2.0.1
*/
protected Load $load;
/**
* The the translations
*
* @var array
* @since 2.0.1
*/
protected array $translations = [];
/**
* Constructor
*
* @param Load $load The load object.
*
* @since 2.0.1
*/
public function __construct(Load $load)
{
$this->load = $load;
}
/**
* Get the translation
*
* @param string $abbreviation The translation abbreviation.
*
* @return object|null True on success
* @since 2.0.1
*/
public function get(string $abbreviation): ?object
{
if (!isset($this->translations[$abbreviation]))
{
$this->translations[$abbreviation] = $this->load->item(['abbreviation' => $abbreviation], 'translation');
}
return $this->translations[$abbreviation];
}

View File

@ -0,0 +1,23 @@
{
"add_head": "0",
"add_licensing_template": "2",
"extends": "0",
"guid": "c4098e1a-46dd-4d60-9277-b3668a09edc8",
"implements": null,
"load_selection": null,
"name": "Translation",
"power_version": "1.0.0",
"system_name": "Joomla.GetBible.Data.Translation",
"type": "final class",
"use_selection": {
"use_selection0": {
"use": "c03b9c61-17d3-4774-a335-783903719f83",
"as": "default"
}
},
"namespace": "VDM\\Joomla\\GetBible\\Data.Translation",
"description": "The GetBible Translation Data\r\n\r\n@since 2.0.1",
"licensing_template": "\/**\r\n * @package GetBible\r\n *\r\n * @created 30th May, 2023\r\n * @author Llewellyn van der Merwe <https:\/\/dev.vdm.io>\r\n * @git GetBible <https:\/\/git.vdm.dev\/getBible>\r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n",
"head": "",
"composer": ""
}

View File

@ -0,0 +1,60 @@
```
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
```
# final class AI (Details)
> namespace: **VDM\Joomla\GetBible**
```uml
@startuml
class AI << (F,LightGreen) >> #Green {
# Translation $translation
# Chapter $chapter
# Prompt $prompt
+ __construct(Translation $translation, Chapter $chapter, ...)
+ get(string $guid, string $translation, ...) : ?array
}
note right of AI::__construct
Constructor
since: 2.0.1
arguments:
Translation $translation
Chapter $chapter
Prompt $prompt
end note
note right of AI::get
Get the Open AI response
since: 2.0.1
return: ?array
arguments:
string $guid
string $translation
int $book
int $chapter
string $verse
string $words
end note
@enduml
```
---
```
██╗ ██████╗██████╗
██║██╔════╝██╔══██╗
██║██║ ██████╔╝
██ ██║██║ ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
╚════╝ ╚═════╝╚═════╝
```
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)

View File

@ -0,0 +1,84 @@
<?php
/**
* @package GetBible
*
* @created 30th May, 2023
* @author Llewellyn van der Merwe <https://dev.vdm.io>
* @git GetBible <https://git.vdm.dev/getBible>
* @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace VDM\Joomla\GetBible;
use VDM\Joomla\GetBible\Data\Translation;
use VDM\Joomla\GetBible\Data\Chapter;
use VDM\Joomla\GetBible\Data\Prompt;
/**
* The GetBible AI
*
* @since 2.0.1
*/
final class AI
{
/**
* The Translation class
*
* @var Translation
* @since 2.0.1
*/
protected Translation $translation;
/**
* The Chapter class
*
* @var Chapter
* @since 2.0.1
*/
protected Chapter $chapter;
/**
* The Prompt class
*
* @var Prompt
* @since 2.0.1
*/
protected Prompt $prompt;
/**
* Constructor
*
* @param Translation $translation The translation object.
* @param Chapter $chapter The chapter object.
* @param Prompt $prompt The prompt object.
*
* @since 2.0.1
*/
public function __construct(Translation $translation, Chapter $chapter, Prompt $prompt)
{
$this->translation = $translation;
$this->chapter = $chapter;
$this->prompt = $prompt;
}
/**
* Get the Open AI response
*
* @param string $guid The prompt guid.
*
* @return array|null Array of response messages
* @since 2.0.1
*/
public function get(string $guid, string $translation, int $book, int $chapter, string $verse, string $words): ?array
{
return [
'translation' => $this->translation->get($translation),
'chapter' => $this->chapter->get($translation, $book, $chapter),
'prompt' => $this->prompt->get($guid)
];
}
}

View File

@ -0,0 +1,56 @@
/**
* The Translation class
*
* @var Translation
* @since 2.0.1
*/
protected Translation $translation;
/**
* The Chapter class
*
* @var Chapter
* @since 2.0.1
*/
protected Chapter $chapter;
/**
* The Prompt class
*
* @var Prompt
* @since 2.0.1
*/
protected Prompt $prompt;
/**
* Constructor
*
* @param Translation $translation The translation object.
* @param Chapter $chapter The chapter object.
* @param Prompt $prompt The prompt object.
*
* @since 2.0.1
*/
public function __construct(Translation $translation, Chapter $chapter, Prompt $prompt)
{
$this->translation = $translation;
$this->chapter = $chapter;
$this->prompt = $prompt;
}
/**
* Get the Open AI response
*
* @param string $guid The prompt guid.
*
* @return array|null Array of response messages
* @since 2.0.1
*/
public function get(string $guid, string $translation, int $book, int $chapter, string $verse, string $words): ?array
{
return [
'translation' => $this->translation->get($translation),
'chapter' => $this->chapter->get($translation, $book, $chapter),
'prompt' => $this->prompt->get($guid)
];
}

View File

@ -0,0 +1,31 @@
{
"add_head": "0",
"add_licensing_template": "2",
"extends": "0",
"guid": "f3757646-bc63-4f11-98c1-a2663180ab5e",
"implements": null,
"load_selection": null,
"name": "AI",
"power_version": "1.0.0",
"system_name": "Joomla.GetBible.AI",
"type": "final class",
"use_selection": {
"use_selection1": {
"use": "c4098e1a-46dd-4d60-9277-b3668a09edc8",
"as": "default"
},
"use_selection2": {
"use": "4a4c786d-51f4-421a-aa61-262dfd071880",
"as": "default"
},
"use_selection0": {
"use": "3f785d63-a592-463d-9f5f-b2b5a8edd561",
"as": "default"
}
},
"namespace": "VDM\\Joomla\\GetBible\\AI",
"description": "The GetBible AI\r\n\r\n@since 2.0.1",
"licensing_template": "\/**\r\n * @package GetBible\r\n *\r\n * @created 30th May, 2023\r\n * @author Llewellyn van der Merwe <https:\/\/dev.vdm.io>\r\n * @git GetBible <https:\/\/git.vdm.dev\/getBible>\r\n * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved.\r\n * @license GNU General Public License version 2 or later; see LICENSE.txt\r\n *\/\r\n",
"head": "",
"composer": ""
}

View File

@ -15,6 +15,10 @@ namespace VDM\Joomla\GetBible;
use Joomla\DI\Container;
use VDM\Joomla\GetBible\Service\Openai as Api;
use VDM\Joomla\Openai\Service\Utilities;
use VDM\Joomla\GetBible\Service\Data;
use VDM\Joomla\GetBible\Service\AI;
use VDM\Joomla\GetBible\Service\Model;
use VDM\Joomla\GetBible\Service\Database;
use VDM\Joomla\Interfaces\FactoryInterface;
@ -71,8 +75,12 @@ abstract class Openai implements FactoryInterface
protected static function createContainer(): Container
{
return (new Container())
->registerServiceProvider(new Api())
->registerServiceProvider(new Utilities())
->registerServiceProvider(new Api());
->registerServiceProvider(new Data())
->registerServiceProvider(new AI())
->registerServiceProvider(new Model())
->registerServiceProvider(new Database());
}
}

View File

@ -44,6 +44,10 @@
protected static function createContainer(): Container
{
return (new Container())
->registerServiceProvider(new Api())
->registerServiceProvider(new Utilities())
->registerServiceProvider(new Api());
->registerServiceProvider(new Data())
->registerServiceProvider(new AI())
->registerServiceProvider(new Model())
->registerServiceProvider(new Database());
}

View File

@ -19,6 +19,22 @@
"use_selection1": {
"use": "07858e1f-5698-4227-8941-03dc93557938",
"as": "default"
},
"use_selection5": {
"use": "3439e63b-d8f1-42ce-a765-60d56b1fbe21",
"as": "default"
},
"use_selection2": {
"use": "b2c9493f-692b-426b-af22-c6865f76c2bb",
"as": "default"
},
"use_selection3": {
"use": "116eb429-bc51-4d14-b9aa-7145c86a29d1",
"as": "default"
},
"use_selection4": {
"use": "51bb0397-fa7c-4f7a-a4c5-1f95fdacad38",
"as": "default"
}
},
"namespace": "VDM\\Joomla\\GetBible\\Openai",

View File

@ -498,32 +498,23 @@ class Table extends BaseTable implements Tableinterface
'store' => NULL,
'tab_name' => 'Prompt',
],
'top_p' => [
'name' => 'top_p',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_TOP_P_LABEL',
'type' => 'number',
'verse' => [
'name' => 'verse',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_VERSE_LABEL',
'type' => 'text',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Prompt',
'tab_name' => 'Bible',
],
'temperature' => [
'name' => 'temperature',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_TEMPERATURE_LABEL',
'type' => 'number',
'book' => [
'name' => 'book',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_BOOK_LABEL',
'type' => 'text',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Prompt',
],
'max_tokens' => [
'name' => 'max_tokens',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_MAX_TOKENS_LABEL',
'type' => 'number',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Prompt',
'tab_name' => 'Bible',
],
'completion_tokens' => [
'name' => 'completion_tokens',
@ -552,6 +543,69 @@ class Table extends BaseTable implements Tableinterface
'store' => NULL,
'tab_name' => 'Details',
],
'abbreviation' => [
'name' => 'abbreviation',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_ABBREVIATION_LABEL',
'type' => 'targettranslations',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Bible',
],
'lcsh' => [
'name' => 'lcsh',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_LCSH_LABEL',
'type' => 'text',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Bible',
],
'max_tokens' => [
'name' => 'max_tokens',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_MAX_TOKENS_LABEL',
'type' => 'number',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Prompt',
],
'chapter' => [
'name' => 'chapter',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_CHAPTER_LABEL',
'type' => 'text',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Bible',
],
'temperature' => [
'name' => 'temperature',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_TEMPERATURE_LABEL',
'type' => 'number',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Prompt',
],
'words' => [
'name' => 'words',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_WORDS_LABEL',
'type' => 'text',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Bible',
],
'top_p' => [
'name' => 'top_p',
'label' => 'COM_GETBIBLE_OPEN_AI_RESPONSE_TOP_P_LABEL',
'type' => 'number',
'title' => false,
'list' => 'open_ai_responses',
'store' => NULL,
'tab_name' => 'Prompt',
],
],
'open_ai_message' => [
'role' => [

View File

@ -21,6 +21,28 @@
"spk": "Super__11892cfa_374e_4e3f_b0bc_531871c822d9__Power",
"guid": "11892cfa-374e-4e3f-b0bc-531871c822d9"
},
"3439e63b-d8f1-42ce-a765-60d56b1fbe21": {
"name": "Data",
"type": "class",
"namespace": "VDM\\Joomla\\GetBible\\Service",
"code": "src\/3439e63b-d8f1-42ce-a765-60d56b1fbe21\/code.php",
"power": "src\/3439e63b-d8f1-42ce-a765-60d56b1fbe21\/code.power",
"settings": "src\/3439e63b-d8f1-42ce-a765-60d56b1fbe21\/settings.json",
"path": "src\/3439e63b-d8f1-42ce-a765-60d56b1fbe21",
"spk": "Super__3439e63b_d8f1_42ce_a765_60d56b1fbe21__Power",
"guid": "3439e63b-d8f1-42ce-a765-60d56b1fbe21"
},
"3f785d63-a592-463d-9f5f-b2b5a8edd561": {
"name": "Prompt",
"type": "final class",
"namespace": "VDM\\Joomla\\GetBible\\Data",
"code": "src\/3f785d63-a592-463d-9f5f-b2b5a8edd561\/code.php",
"power": "src\/3f785d63-a592-463d-9f5f-b2b5a8edd561\/code.power",
"settings": "src\/3f785d63-a592-463d-9f5f-b2b5a8edd561\/settings.json",
"path": "src\/3f785d63-a592-463d-9f5f-b2b5a8edd561",
"spk": "Super__3f785d63_a592_463d_9f5f_b2b5a8edd561__Power",
"guid": "3f785d63-a592-463d-9f5f-b2b5a8edd561"
},
"491c91ce-6355-40d3-bbbd-622473c6c026": {
"name": "Books",
"type": "final class",
@ -32,6 +54,17 @@
"spk": "Super__491c91ce_6355_40d3_bbbd_622473c6c026__Power",
"guid": "491c91ce-6355-40d3-bbbd-622473c6c026"
},
"4a4c786d-51f4-421a-aa61-262dfd071880": {
"name": "Chapter",
"type": "final class",
"namespace": "VDM\\Joomla\\GetBible\\Data",
"code": "src\/4a4c786d-51f4-421a-aa61-262dfd071880\/code.php",
"power": "src\/4a4c786d-51f4-421a-aa61-262dfd071880\/code.power",
"settings": "src\/4a4c786d-51f4-421a-aa61-262dfd071880\/settings.json",
"path": "src\/4a4c786d-51f4-421a-aa61-262dfd071880",
"spk": "Super__4a4c786d_51f4_421a_aa61_262dfd071880__Power",
"guid": "4a4c786d-51f4-421a-aa61-262dfd071880"
},
"51bb0397-fa7c-4f7a-a4c5-1f95fdacad38": {
"name": "Database",
"type": "class",
@ -175,6 +208,17 @@
"spk": "Super__b1bd2b4f_dede_44ad_86e9_2a595a0a9ca0__Power",
"guid": "b1bd2b4f-dede-44ad-86e9-2a595a0a9ca0"
},
"b2c9493f-692b-426b-af22-c6865f76c2bb": {
"name": "AI",
"type": "class",
"namespace": "VDM\\Joomla\\GetBible\\Service",
"code": "src\/b2c9493f-692b-426b-af22-c6865f76c2bb\/code.php",
"power": "src\/b2c9493f-692b-426b-af22-c6865f76c2bb\/code.power",
"settings": "src\/b2c9493f-692b-426b-af22-c6865f76c2bb\/settings.json",
"path": "src\/b2c9493f-692b-426b-af22-c6865f76c2bb",
"spk": "Super__b2c9493f_692b_426b_af22_c6865f76c2bb__Power",
"guid": "b2c9493f-692b-426b-af22-c6865f76c2bb"
},
"b32eea04-6b9c-469d-94db-35d610686cf1": {
"name": "Api",
"type": "class",
@ -230,6 +274,17 @@
"spk": "Super__c03b9c61_17d3_4774_a335_783903719f83__Power",
"guid": "c03b9c61-17d3-4774-a335-783903719f83"
},
"c4098e1a-46dd-4d60-9277-b3668a09edc8": {
"name": "Translation",
"type": "final class",
"namespace": "VDM\\Joomla\\GetBible\\Data",
"code": "src\/c4098e1a-46dd-4d60-9277-b3668a09edc8\/code.php",
"power": "src\/c4098e1a-46dd-4d60-9277-b3668a09edc8\/code.power",
"settings": "src\/c4098e1a-46dd-4d60-9277-b3668a09edc8\/settings.json",
"path": "src\/c4098e1a-46dd-4d60-9277-b3668a09edc8",
"spk": "Super__c4098e1a_46dd_4d60_9277_b3668a09edc8__Power",
"guid": "c4098e1a-46dd-4d60-9277-b3668a09edc8"
},
"c99e85a0-d120-4f25-bcbf-0940dd7b773b": {
"name": "Response",
"type": "final class",
@ -252,6 +307,17 @@
"spk": "Super__d7a5f0c6_de60_4d31_b3e4_5d668a8f7d2e__Power",
"guid": "d7a5f0c6-de60-4d31-b3e4-5d668a8f7d2e"
},
"f3757646-bc63-4f11-98c1-a2663180ab5e": {
"name": "AI",
"type": "final class",
"namespace": "VDM\\Joomla\\GetBible",
"code": "src\/f3757646-bc63-4f11-98c1-a2663180ab5e\/code.php",
"power": "src\/f3757646-bc63-4f11-98c1-a2663180ab5e\/code.power",
"settings": "src\/f3757646-bc63-4f11-98c1-a2663180ab5e\/settings.json",
"path": "src\/f3757646-bc63-4f11-98c1-a2663180ab5e",
"spk": "Super__f3757646_bc63_4f11_98c1_a2663180ab5e__Power",
"guid": "f3757646-bc63-4f11-98c1-a2663180ab5e"
},
"f722bb8b-d377-4425-b1e4-2fe1734a3664": {
"name": "Openai",
"type": "abstract class",