issue-pane 2.4.20-ed8394f2 → 2.5.0-d4364c78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/csvButton.js CHANGED
@@ -7,13 +7,19 @@
7
7
  import { icons, ns, utils, widgets } from 'solid-ui'
8
8
  import { store } from 'solid-logic'
9
9
 
10
+ const TestCSVstring = 'A,B,C\n1,2,3\n4,5,6\nfoo,bar,baz\n'
11
+
10
12
  export function quoteString(value) {
11
13
  // https://www.rfc-editor.org/rfc/rfc4180
12
- const stripped = value.replace('\n', ' ')
14
+ const stripped = value.replaceAll('\n', ' ')
13
15
  if (!stripped.includes(',')) {
14
16
  return stripped
15
17
  } // If contains comma then put in quotes and double up internal quotes
16
- return '"' + stripped.replace('"', '""') + '"'
18
+ const quoted = '"' + stripped.replaceAll('"', '""') + '"'
19
+ console.log('Quoted: >>>' + quoted + '<<<')
20
+ const check = quoted.slice(1,-1).replaceAll('""', '')
21
+ if (check.includes('"')) throw new Error('CSV inconsistecy')
22
+ return quoted
17
23
  }
18
24
 
19
25
  export function csvText(store, tracker) {
@@ -22,17 +28,18 @@ export function csvText(store, tracker) {
22
28
  let thing
23
29
  if (column.predicate) {
24
30
  thing = store.any(task, column.predicate)
31
+ return thing? thing.value : '--'
25
32
  }
26
33
  else if (column.category) {
27
34
  const types = store.each(task, ns.rdf('type'))
28
35
  for (const t of types) {
29
- console.log('@@ checking subclass type: ', t, ' category: ', column.category )
36
+ // console.log('@@ checking subclass type: ', t, ' category: ', column.category )
30
37
  if (store.holds(t, ns.rdfs('subClassOf'), column.category)){
31
38
  thing = t
32
39
  }
33
40
  }
34
- if (!thing) return '?' + utils.label(column.category) // @@
35
- if (!thing) throw new Error('wot no class of category ', column.category)
41
+ if (!thing) return '?' + utils.label(column.category) // Missing cat OK
42
+ // if (!thing) throw new Error('wot no class of category ', column.category)
36
43
  } else {
37
44
  throw new Error('wot no pred or cat', column)
38
45
  }
@@ -43,26 +50,32 @@ export function csvText(store, tracker) {
43
50
  return columns.map(column => columnText(task, column))
44
51
  .map(quoteString)
45
52
  .join(',')
46
- + '/n'
53
+ + '\n'
47
54
  }
48
55
  const stateStore = store.any(tracker, ns.wf('stateStore'))
49
56
  const tasks = store.each(null, ns.wf('tracker'), tracker, stateStore)
57
+ console.log(' CSV: Tasks:', tasks.length)
58
+
59
+ const columns = [
60
+
61
+ { label: 'Name', predicate: ns.dc('title') },
62
+ /* { label: 'Description', predicate: ns.wf('description') }, */
50
63
 
51
- let columns = [
52
- /* like:
53
- { label: 'Name', predicate: ns.dct('title') },
54
- { label: 'State', category: ns.wf('Task') }
64
+ /* { label: 'State', category: ns.wf('Task') }
55
65
  */
56
66
  ]
57
67
  const states = store.any(tracker, ns.wf('issueClass')) // Main states are subclasses of this class
58
68
  console.log(' CSV: States - main superclass:', states)
69
+ const stateColumn = { label: 'State', category: states} // better than 'task'
70
+ console.log(' CSV: found column from state', stateColumn)
71
+ columns.push(stateColumn)
59
72
 
60
73
  const categories = store.each(tracker, ns.wf('issueCategory'))
61
74
  console.log(' CSV: Categories : ', categories )
62
75
  console.log(' CSV: Categories : length: ', categories.length)
63
76
  console.log(' CSV: Categories : first: ', categories[0])
64
77
 
65
- const classifications = [states].concat(categories)
78
+ const classifications = categories
66
79
  for (const c of classifications){
67
80
  const column = { label: utils.label(c), category: c}
68
81
  console.log(' CSV: found column from classifications', column)
@@ -70,35 +83,52 @@ export function csvText(store, tracker) {
70
83
  }
71
84
 
72
85
  // const propertyList = ns.wf('propertyList')
73
- const form = store.any(tracker, ns.wf('extrasEntryForm'), null, tracker.doc())
86
+ const form = store.any(tracker, ns.wf('extrasEntryForm'), null, null)
87
+ console.log(' CSV: Form : ', form )
88
+
74
89
  if (form) {
75
90
  const parts = store.any(form, ns.ui('parts'), null, form.doc())
91
+ console.log(' CSV: parts : ', parts )
92
+
76
93
  const fields = parts.elements
94
+ console.log(' CSV: fields : ', fields )
95
+
77
96
  for (const field of fields) {
78
97
  const prop = store.any(field,ns.ui('property'))
79
- const lab = utils.label(prop)
80
- const column = {label: lab, predicate: prop}
81
- console.log(' CSV: found column from form', column)
82
- columns.push(column)
98
+ if (prop) {
99
+ const lab = utils.label(prop)
100
+ const column = {label: lab, predicate: prop}
101
+ console.log(' CSV: found column from form', column)
102
+ columns.push(column)
103
+ }
83
104
  }
84
105
  }
106
+ // Put description on the end as it can be long
107
+ columns.push({ label: 'Description', predicate: ns.wf('description') })
108
+ console.log('Columns: ', columns.length)
85
109
  const header = columns.map(col => col.label).join(',') + '\n'
110
+ console.log('CSV: Header= ', header)
86
111
  // Order tasks?? By Creation date? By Status?
87
- const body = tasks.map(taskLine)
112
+ const body = tasks.map(taskLine).join('')
88
113
  return header + body
89
114
  }
90
115
 
91
116
  export function csvButton (dom, tracker) {
92
117
  const wrapper = dom.createElement('div')
93
118
  // Add a button
94
- const button = widgets.button(dom, icons.iconBase + 'noun_479395.svg',
95
- 'Copy as CSV', async _event => {
96
- const csv = csvText(store, tracker)
97
- var copyEvent = new ClipboardEvent('copy');
98
- copyEvent.clipboardData.items.add(csv, 'text/csv');
99
- copyEvent.clipboardData.items.add(csv, 'text/plain');
100
- dom.dispatchEvent(copyEvent);
101
- alert('Copy dispatched.')
119
+ const button = widgets.button(dom, icons.iconBase + 'noun_Document_998605.svg',
120
+ 'Copy as CSV', async event => {
121
+
122
+ const div = button.parentNode.parentNode
123
+ console.log('button gparent div', div)
124
+ div.addEventListener('copy', event => {
125
+ // alert ('Copy caught');
126
+ const csv = csvText(store, tracker);
127
+ event.clipboardData.setData("text/plain", csv);
128
+ event.clipboardData.setData("text/csv", csv);
129
+ alert ('Copy data: ' + csv)
130
+ event.preventDefault();
131
+ })
102
132
  })
103
133
 
104
134
  wrapper.appendChild(button)
package/dev/index.js CHANGED
@@ -29,7 +29,12 @@ finishLogin();
29
29
  // const targetURIToShow = "https://angelo.veltens.org/profile/card#me";
30
30
  // const targetURIToShow = "https://testingsolidos.solidcommunity.net/profile/card#me";
31
31
  // const targetURIToShow = "https://timbl.solidcommunity.net/profile/card#me";
32
- const targetURIToShow = "https://solidproject.solidcommunity.net/Roadmap/index.ttl#this";
32
+
33
+ // const targetURIToShow = "https://solidproject.solidcommunity.net/Roadmap/index.ttl#this";
34
+
35
+ // const targetURIToShow = "https://timbl.com/timbl/Automation/mother/tracker.n3#mother"
36
+
37
+ const targetURIToShow = "http://localhost:8080/big-tracker.ttl#this"
33
38
 
34
39
  fetcher.load(targetURIToShow).then(() => {
35
40
  const app = pane.render(sym(targetURIToShow), context);
@@ -0,0 +1,238 @@
1
+
2
+ # This is the master file for a big issue tracker
3
+
4
+ @prefix : <#> .
5
+ @prefix con: <http://www.w3.org/2000/10/swap/pim/contact#> .
6
+ @prefix doap: <http://usefulinc.com/ns/doap#> .
7
+ @prefix flow: <http://www.w3.org/2005/01/wf/flow#> .
8
+ @prefix ical: <http://www.w3.org/2002/12/cal/ical#> .
9
+ @prefix owl: <http://www.w3.org/2002/07/owl#> .
10
+ @prefix ui: <http://www.w3.org/ns/ui#> .
11
+
12
+ :Accepted a <http://www.w3.org/2000/01/rdf-schema#Class>;
13
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Will go ahead. We are working on this";
14
+ <http://www.w3.org/2000/01/rdf-schema#label> "Accepted, in progress";
15
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
16
+ :MotherIssue;
17
+ ui:sortOrder 50 .
18
+
19
+ :Action a <http://www.w3.org/2000/01/rdf-schema#Class>;
20
+ <http://www.w3.org/2000/01/rdf-schema#label> "action";
21
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
22
+ ui:backgroundColor "#eeeeff";
23
+ ui:sortOrder 80 .
24
+
25
+ :AttendConference a <http://www.w3.org/2000/01/rdf-schema#Class>;
26
+ <http://www.w3.org/2000/01/rdf-schema#label> "attend conference";
27
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
28
+ ui:backgroundColor "#fcfce8";
29
+ ui:sortOrder 50 .
30
+
31
+ :Book a <http://www.w3.org/2000/01/rdf-schema#Class>;
32
+ <http://www.w3.org/2000/01/rdf-schema#label> "book";
33
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
34
+ ui:backgroundColor "#eeffee";
35
+ ui:sortOrder 70 .
36
+
37
+ :CommercialSpeaking a <http://www.w3.org/2000/01/rdf-schema#Class>;
38
+ <http://www.w3.org/2000/01/rdf-schema#label> "commercial speaking";
39
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
40
+ ui:backgroundColor "#ffcbad";
41
+ ui:sortOrder 30 .
42
+
43
+ :Declined a <http://www.w3.org/2000/01/rdf-schema#Class>;
44
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Declined";
45
+ <http://www.w3.org/2000/01/rdf-schema#label> "declined";
46
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Closed,
47
+ :MotherIssue;
48
+ ui:sortOrder 30 .
49
+
50
+ :Discussing a <http://www.w3.org/2000/01/rdf-schema#Class>;
51
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Being discussed";
52
+ <http://www.w3.org/2000/01/rdf-schema#label> "in discussion";
53
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
54
+ :MotherIssue;
55
+ ui:sortOrder 80 .
56
+
57
+ :Done a <http://www.w3.org/2000/01/rdf-schema#Class>;
58
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Completed.";
59
+ <http://www.w3.org/2000/01/rdf-schema#label> "done";
60
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Closed,
61
+ :MotherIssue;
62
+ ui:sortOrder 20 .
63
+
64
+ :Film a <http://www.w3.org/2000/01/rdf-schema#Class>;
65
+ <http://www.w3.org/2000/01/rdf-schema#label> "film";
66
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
67
+ ui:backgroundColor "#eeffff";
68
+ ui:sortOrder 80 .
69
+
70
+ :HonoraryDegree a <http://www.w3.org/2000/01/rdf-schema#Class>;
71
+ <http://www.w3.org/2000/01/rdf-schema#label> "honorary degree";
72
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
73
+ ui:backgroundColor "#ffa8ab";
74
+ ui:sortOrder 40 .
75
+
76
+ :Meeting a <http://www.w3.org/2000/01/rdf-schema#Class>;
77
+ <http://www.w3.org/2000/01/rdf-schema#label> "meeting request";
78
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
79
+ ui:backgroundColor "#e8e8ff";
80
+ ui:sortOrder 60 .
81
+
82
+ :MotherIssue a <http://www.w3.org/2000/01/rdf-schema#Class>;
83
+ <http://www.w3.org/2000/01/rdf-schema#label> "Request";
84
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Task;
85
+ owl:disjointUnionOf (
86
+ :New
87
+ :Discussing
88
+ :Pending
89
+ :Negotiating
90
+ :Accepted
91
+ :Urgent
92
+ :ToBeDeclined
93
+ :Watchlist
94
+ :Declined
95
+ :Obsolete
96
+ :Done ) .
97
+
98
+ :Negotiating a <http://www.w3.org/2000/01/rdf-schema#Class>;
99
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Being negotiated";
100
+ <http://www.w3.org/2000/01/rdf-schema#label> "negotiating";
101
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
102
+ :MotherIssue;
103
+ ui:sortOrder 60 .
104
+
105
+ :New a <http://www.w3.org/2000/01/rdf-schema#Class>;
106
+ <http://www.w3.org/2000/01/rdf-schema#comment> """Has not been looked at.
107
+ This is the initial state normally when an issue is created.""";
108
+ <http://www.w3.org/2000/01/rdf-schema#label> "new";
109
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
110
+ :MotherIssue;
111
+ ui:sortOrder 90 .
112
+
113
+ :NonProfitSpeaking a <http://www.w3.org/2000/01/rdf-schema#Class>;
114
+ <http://www.w3.org/2000/01/rdf-schema#label> "non-profit speaking";
115
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
116
+ ui:backgroundColor "#fffed0";
117
+ ui:sortOrder 20 .
118
+
119
+ :Obsolete a <http://www.w3.org/2000/01/rdf-schema#Class>;
120
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Overtaken by time or events.";
121
+ <http://www.w3.org/2000/01/rdf-schema#label> "obsolete/missed";
122
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Closed,
123
+ :MotherIssue;
124
+ ui:sortOrder 10 .
125
+
126
+
127
+ :OtherRequest a <http://www.w3.org/2000/01/rdf-schema#Class>;
128
+ <http://www.w3.org/2000/01/rdf-schema#label> "other";
129
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
130
+ ui:backgroundColor "#eeeeee";
131
+ ui:sortOrder 90 .
132
+
133
+ :Pending a <http://www.w3.org/2000/01/rdf-schema#Class>;
134
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Waiting for someone else's input.";
135
+ <http://www.w3.org/2000/01/rdf-schema#label> "pending others";
136
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
137
+ :MotherIssue;
138
+ ui:sortOrder 75 .
139
+
140
+ :PressRequest a <http://www.w3.org/2000/01/rdf-schema#Class>;
141
+ <http://www.w3.org/2000/01/rdf-schema#label> "press";
142
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> :RequestCategory;
143
+ ui:backgroundColor "#dccdfc";
144
+ ui:sortOrder 10 .
145
+
146
+ :RequestCategory <http://www.w3.org/2000/01/rdf-schema#label> "category";
147
+ owl:disjointUnionOf (
148
+ :PressRequest
149
+ :NonProfitSpeaking
150
+ :CommercialSpeaking
151
+ :HonoraryDegree
152
+ :AttendConference
153
+ :Meeting
154
+ :Book
155
+ :Film
156
+ :Action
157
+ :OtherRequest ) .
158
+
159
+ :RequestExtrasForm a ui:Form,
160
+ ui:Group;
161
+ <http://purl.org/dc/elements/1.1/title> "Extra details of a request";
162
+ ui:parts (
163
+ [
164
+ a ui:Heading;
165
+ ui:contents "Details:"@en;
166
+ ui:sequence 10 ]
167
+ [
168
+ a ui:DateField;
169
+ ui:property flow:earliestDate;
170
+ ui:sequence 20 ]
171
+ [
172
+ a ui:DateField;
173
+ ui:property flow:latestDate;
174
+ ui:sequence 40 ]
175
+ [
176
+ a ui:Comment;
177
+ ui:contents "The earliest and latest dates are the window for the event, or both the same if fixed."@en;
178
+ ui:sequence 60;
179
+ ui:style "background-color: #ffe;" ]
180
+ [
181
+ a ui:SingleLineTextField;
182
+ ui:property ical:location;
183
+ ui:seuqence 70;
184
+ ui:size 30 ]
185
+ [
186
+ a ui:DateField;
187
+ ui:property flow:dateReceived;
188
+ ui:sequence 80 ]
189
+ [
190
+ a ui:MultiLineTextField;
191
+ ui:property <http://www.w3.org/2000/01/rdf-schema#comment>;
192
+ ui:sequence 90 ] ) .
193
+
194
+
195
+ :ToBeDeclined a <http://www.w3.org/2000/01/rdf-schema#Class>;
196
+ <http://www.w3.org/2000/01/rdf-schema#comment> "To be declined";
197
+ <http://www.w3.org/2000/01/rdf-schema#label> "to be declined";
198
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
199
+ :MotherIssue;
200
+ ui:sortOrder 40 .
201
+
202
+ :Urgent a <http://www.w3.org/2000/01/rdf-schema#Class>;
203
+ <http://www.w3.org/2000/01/rdf-schema#comment> "Needs urgent attention";
204
+ <http://www.w3.org/2000/01/rdf-schema#label> "URGENT";
205
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
206
+ :MotherIssue;
207
+ ui:sortOrder 55 .
208
+
209
+ :Watchlist a <http://www.w3.org/2000/01/rdf-schema#Class>;
210
+ <http://www.w3.org/2000/01/rdf-schema#comment> "We will keep this in mind.";
211
+ <http://www.w3.org/2000/01/rdf-schema#label> "watch list";
212
+ <http://www.w3.org/2000/01/rdf-schema#subClassOf> flow:Open,
213
+ :MotherIssue;
214
+ ui:sortOrder 35 .
215
+
216
+ :this a flow:Tracker;
217
+ <http://purl.org/dc/terms/title> "The Big Request Tracker";
218
+ <http://www.w3.org/2000/01/rdf-schema#label> "Request Tracker";
219
+ flow:allowSubIssues :false;
220
+ flow:assigneeClass <http://xmlns.com/foaf/0.1/Person>;
221
+ flow:defaultView flow:TableView;
222
+ flow:description "Requests";
223
+ flow:extrasEntryForm :RequestExtrasForm;
224
+ flow:initialState :New;
225
+ flow:issueCategory :RequestCategory;
226
+ flow:issueClass :MotherIssue;
227
+ flow:propertyList (
228
+ flow:earliestDate
229
+ flow:latestDate
230
+ ical:location
231
+ <http://www.w3.org/2000/01/rdf-schema#comment>
232
+ flow:assignee );
233
+ flow:stateStore <state.n3> .
234
+
235
+ <tracker.n3> <http://www.w3.org/2000/01/rdf-schema#comment> """This file defines a tracker for requests.
236
+ """;
237
+ <http://www.w3.org/2000/01/rdf-schema#label> "A tracker definition file for requests" .
238
+
@@ -0,0 +1,78 @@
1
+ @prefix : <#>.
2
+ @prefix dc: <http://purl.org/dc/elements/1.1/>.
3
+ @prefix dct: <http://purl.org/dc/terms/>.
4
+ @prefix foaf: <http://xmlns.com/foaf/0.1/>.
5
+ @prefix owl: <http://www.w3.org/2002/07/owl#>.
6
+ @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
7
+ @prefix ui: <http://www.w3.org/ns/ui#>.
8
+ @prefix wf: <http://www.w3.org/2005/01/wf/flow#>.
9
+ @prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
10
+ @prefix c: </profile/card#>.
11
+
12
+ :Classification
13
+ rdfs:label "Category";
14
+ owl:disjointUnionOf
15
+ ( :Specification :Tests :Servers :Clients :DeveloperTools :Vertical ).
16
+ :Clients
17
+ rdfs:comment "Client side frameworks, SDKs and operating systems";
18
+ rdfs:label "Clients";
19
+ rdfs:subClassOf :Classification.
20
+ :DeveloperTools rdfs:label "Developer tools"; rdfs:subClassOf :Classification.
21
+
22
+ :InProgress
23
+ rdfs:label "In progress";
24
+ rdfs:subClassOf wf:Open, :States;
25
+ ui:backgroundColor "#f9ee71"^^xsd:color.
26
+ :NextSession
27
+ rdfs:label "To be done this month";
28
+ rdfs:subClassOf wf:Open, :States;
29
+ ui:backgroundColor "#91fdb9"^^xsd:color.
30
+ :Released
31
+ rdfs:label "Released";
32
+ rdfs:subClassOf wf:Open, :States;
33
+ ui:backgroundColor "#e2a7fb"^^xsd:color.
34
+ :Research
35
+ rdfs:label "Research";
36
+ rdfs:subClassOf wf:Open, :States;
37
+ ui:backgroundColor "#ffffff"^^xsd:color.
38
+ :Servers
39
+ rdfs:label "Solid Server implementations"; rdfs:subClassOf :Classification.
40
+ :Someday
41
+ rdfs:label "Someday pile";
42
+ rdfs:subClassOf wf:Open, :States;
43
+ ui:backgroundColor "#e3e3e3"^^xsd:color.
44
+ :Specification
45
+ rdfs:label "Parts of the Solid specification"; rdfs:subClassOf :Classification.
46
+ :States
47
+ rdfs:label "Task";
48
+ owl:disjointUnionOf
49
+ ( :Research :Someday :ToBeDone :NextSession :InProgress :Works :Released ).
50
+ :Tests rdfs:label "Test suites"; rdfs:subClassOf :Classification.
51
+
52
+ :this
53
+ a wf:Tracker;
54
+ dc:author c:me;
55
+ dc:created "2020-07-21T14:00:20Z"^^xsd:dateTime;
56
+ dct:title "Solid Ecosystem: Roadmap";
57
+ wf:assigneeClass foaf:Person;
58
+ wf:defaultView :Classification;
59
+ wf:description
60
+ """A roadmap for the whole Solid ecosystem.
61
+ See also other linked roadmaps for parts of the ecosystem like the SolidOS, Spec, open source projects, etc.
62
+
63
+
64
+ """;
65
+ wf:initialState :Someday;
66
+ wf:issueCategory :Classification;
67
+ wf:issueClass :States;
68
+ wf:stateStore <state.ttl>.
69
+ :ToBeDone
70
+ rdfs:label "To Be Done";
71
+ rdfs:subClassOf wf:Open, :States;
72
+ ui:backgroundColor "#e0ffeb"^^xsd:color.
73
+ :Vertical rdfs:label "Apps and Verticals"; rdfs:subClassOf :Classification.
74
+
75
+ :Works
76
+ rdfs:label "Code runs";
77
+ rdfs:subClassOf wf:Open, :States;
78
+ ui:backgroundColor "#dcdbff"^^xsd:color.
package/dist/state.n3 ADDED
@@ -0,0 +1,67 @@
1
+
2
+
3
+ @prefix dc: <http://purl.org/dc/terms/> .
4
+ @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
5
+ @prefix con: <http://www.w3.org/2000/10/swap/pim/contact#> .
6
+ @prefix dc: <http://purl.org/dc/elements/1.1/>.
7
+ @prefix doap: <http://usefulinc.com/ns/doap#> .
8
+ @prefix wf: <http://www.w3.org/2005/01/wf/flow#> .
9
+ @prefix ical: <http://www.w3.org/2002/12/cal/ical#> .
10
+ @prefix owl: <http://www.w3.org/2002/07/owl#> .
11
+ @prefix ui: <http://www.w3.org/ns/ui#> .
12
+ @prefix dct: <http://purl.org/dc/terms/> .
13
+
14
+ @prefix : <big-tracker.ttl#> . # the config file
15
+
16
+ <#Task1> wf:tracker :this ;
17
+ dc:title "Test task 1";
18
+ a :New , :Action;
19
+ dct:created 2004-08-21;
20
+ ical:location "London";
21
+ wf:dateReceived 2000-01-12;
22
+ wf:earliestDate 1999-12-12;
23
+ wf:latestDate 2001-12-12;
24
+
25
+ wf:description "Yadda Tadda yadda ";
26
+ rdfs:comment "This is a comment".
27
+
28
+ <#Task2> wf:tracker :this ;
29
+ dc:title "Test task 2";
30
+ a :Accepted , :Action;
31
+ dct:created 2004-06-21;
32
+ ical:location "London";
33
+ wf:dateReceived 2000-01-12;
34
+ wf:earliestDate 1999-12-12;
35
+ wf:latestDate 2001-12-12;
36
+
37
+ wf:description "Yadda Tadda yadda ";
38
+ rdfs:comment "This is a comment".
39
+
40
+ <#Task3> wf:tracker :this ;
41
+ dc:title "Test task 3";
42
+ a :New , :Book;
43
+ dct:created 2004-04-21;
44
+ ical:location "London";
45
+ wf:dateReceived 2000-01-12;
46
+ wf:earliestDate 1999-12-12;
47
+ wf:latestDate 2001-12-12;
48
+
49
+ wf:description "Yadda Tadda yadda ";
50
+ rdfs:comment "This is a comment".
51
+
52
+ <#Task4> wf:tracker :this ;
53
+ dc:title "Test task 4";
54
+ a :Accepted , :Book;
55
+ dct:created 2004-09-21;
56
+ ical:location "London";
57
+ wf:dateReceived 2000-01-12;
58
+ wf:earliestDate 1999-12-12;
59
+ wf:latestDate 2001-12-12;
60
+
61
+ wf:description "Yadda Tadda yadda ";
62
+ rdfs:comment "This is a comment".
63
+
64
+
65
+
66
+ # ENDS
67
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "issue-pane",
3
- "version": "2.4.20-ed8394f2",
3
+ "version": "2.5.0-d4364c78",
4
4
  "description": "Solid-compatible Panes: issue editor",
5
5
  "main": "./issuePane.js",
6
6
  "scripts": {