Skip to content

Commit bb4c60f

Browse files
committed
base party and related DSL and livebook
1 parent e4b19da commit bb4c60f

20 files changed

Lines changed: 936 additions & 152 deletions

.vscode/launch.json

Lines changed: 0 additions & 34 deletions
This file was deleted.

documentation/dsls/DSL-Diffo.Provider.Instance.Extension.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,5 +183,55 @@ Target: `Diffo.Provider.Instance.Characteristic`
183183

184184

185185

186+
## parties
187+
List of Instance Party roles
188+
189+
### Nested DSLs
190+
* [party](#parties-party)
191+
192+
193+
### Examples
194+
```
195+
parties do
196+
party :facilitated_by, MyApp.Rsp
197+
party :overseen_by, MyApp.Person
198+
end
199+
200+
```
201+
202+
203+
204+
205+
### parties.party
206+
```elixir
207+
party role, party_type
208+
```
209+
210+
211+
Declares a party role on this Instance
212+
213+
214+
215+
216+
217+
### Arguments
218+
219+
| Name | Type | Default | Docs |
220+
|------|------|---------|------|
221+
| [`role`](#parties-party-role){: #parties-party-role .spark-required} | `atom` | | The role name, an atom |
222+
| [`party_type`](#parties-party-party_type){: #parties-party-party_type } | `any` | | The module of the Party kind. An atom module name such as a BaseParty-derived resource. |
223+
224+
225+
226+
227+
228+
229+
### Introspection
230+
231+
Target: `Diffo.Provider.Instance.Extension.PartyDeclaration`
232+
233+
234+
235+
186236

187237
<style type="text/css">.spark-required::after { content: "*"; color: red !important; }</style>
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
<!--
2+
This file was generated by Spark. Do not edit it by hand.
3+
-->
4+
# Diffo.Provider.Party.Extension
5+
6+
DSL Extension customising a Party
7+
8+
9+
## instance
10+
Declares the roles this Party kind plays with respect to Instances
11+
12+
### Nested DSLs
13+
* [role](#instance-role)
14+
15+
16+
### Examples
17+
```
18+
instance do
19+
role :facilitates, MyApp.AccessService
20+
end
21+
22+
```
23+
24+
25+
26+
27+
### instance.role
28+
```elixir
29+
role role, party_type
30+
```
31+
32+
33+
Declares a role this Party kind plays
34+
35+
36+
37+
38+
39+
### Arguments
40+
41+
| Name | Type | Default | Docs |
42+
|------|------|---------|------|
43+
| [`role`](#instance-role-role){: #instance-role-role .spark-required} | `atom` | | The role name, an atom |
44+
| [`party_type`](#instance-role-party_type){: #instance-role-party_type } | `any` | | The module of the related resource |
45+
46+
47+
48+
49+
50+
51+
### Introspection
52+
53+
Target: `Diffo.Provider.Party.Extension.InstanceRole`
54+
55+
56+
57+
58+
## party
59+
Declares the roles this Party kind plays with respect to other Parties
60+
61+
### Nested DSLs
62+
* [role](#party-role)
63+
64+
65+
### Examples
66+
```
67+
party do
68+
role :managed_by, MyApp.Person
69+
end
70+
71+
```
72+
73+
74+
75+
76+
### party.role
77+
```elixir
78+
role role, party_type
79+
```
80+
81+
82+
Declares a role this Party kind plays with respect to other Parties
83+
84+
85+
86+
87+
88+
### Arguments
89+
90+
| Name | Type | Default | Docs |
91+
|------|------|---------|------|
92+
| [`role`](#party-role-role){: #party-role-role .spark-required} | `atom` | | The role name, an atom |
93+
| [`party_type`](#party-role-party_type){: #party-role-party_type } | `any` | | The module of the related Party kind |
94+
95+
96+
97+
98+
99+
100+
### Introspection
101+
102+
Target: `Diffo.Provider.Party.Extension.PartyRole`
103+
104+
105+
106+
107+
108+
<style type="text/css">.spark-required::after { content: "*"; color: red !important; }</style>
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
SPDX-FileCopyrightText: 2025 diffo contributors <https://github.com/diffo-dev/diffo/graphs.contributors>
2+
3+
SPDX-License-Identifier: MIT

0 commit comments

Comments
 (0)