cityworks 0.0.37 → 0.0.39

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.
@@ -1,231 +0,0 @@
1
- import { CWError } from './error'
2
- const _ = require('lodash')
3
-
4
- /**
5
- * A plugin that contains "event layer" methods for a Cityworks install
6
- */
7
- export class EventLayer {
8
- /**
9
- * @hidden
10
- */
11
- cw: any
12
-
13
- /**
14
- * @hidden
15
- */
16
- constructor(cw) {
17
- this.cw = cw
18
- }
19
-
20
- /**
21
- * Update (enable/disable) an event layer
22
- *
23
- * @param {string} eventLayerId - which event layer to update
24
- * @param {boolean} enabled - true to enable, false to disable
25
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
26
- */
27
- update(eventLayerId: number, enabled: boolean) {
28
- return new Promise((resolve, reject) => {
29
- let data = {"EventLayerId": eventLayerId, "Enabled": enabled}
30
- this.cw.runRequest('Ams/EventLayer/Update', data).then(r => {
31
- // console.log(r, 'response')
32
- resolve(r.Value)
33
- }).catch(e => {
34
- reject(e)
35
- })
36
- })
37
- }
38
-
39
- /**
40
- * Enable an event layer
41
- *
42
- * @param {string} eventLayerId - which event layer to update
43
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
44
- */
45
- enable(eventLayerId: number) {
46
- return this.update(eventLayerId, true);
47
- }
48
-
49
- /**
50
- * Disable an event layer
51
- *
52
- * @param {string} eventLayerId - which event layer to update
53
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
54
- */
55
- disable(eventLayerId: number) {
56
- return this.update(eventLayerId, false);
57
- }
58
-
59
- /**
60
- * ??
61
- *
62
- * @param {Array<number>} createBySids -
63
- * @param {Array<string>} queryTypes -
64
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
65
- */
66
- createByID(createBySids: Array<number>, queryTypes: Array<number>) {
67
- return new Promise((resolve, reject) => {
68
- let data = {"CreateBySids": createBySids, "QueryTypes": queryTypes}
69
- this.cw.runRequest('Ams/EurlQuery/IdNames', data).then(r => {
70
- // console.log(r, 'response')
71
- resolve(r.Value)
72
- }).catch(e => {
73
- reject(e)
74
- })
75
- })
76
- }
77
-
78
- /**
79
- * Save user preferences
80
- *
81
- * @param {string} element - "VisibleQeIds"
82
- * @param {string} category - "qe-map"
83
- * @param {Object} defaultValue - {all: [3]}
84
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
85
- */
86
- updatePreferences(element: number, category: boolean, defaultValue: Object) {
87
- return new Promise((resolve, reject) => {
88
- let data = {"Element": element, "Category": category, "DefaultValue": defaultValue}
89
- this.cw.runRequest('Ams/Preferences/UserSave', data).then(r => {
90
- // console.log(r, 'response')
91
- resolve(r.Value)
92
- }).catch(e => {
93
- reject(e)
94
- })
95
- })
96
- }
97
-
98
- /**
99
- * Get all event layers
100
- *
101
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
102
- */
103
- all() {
104
- return new Promise((resolve, reject) => {
105
- let data = {}
106
- this.cw.runRequest('Ams/EventLayer/All', data).then(r => {
107
- // console.log(r, 'response')
108
- resolve(r.Value)
109
- }).catch(e => {
110
- reject(e)
111
- })
112
- })
113
- }
114
-
115
- /**
116
- * Get all EUrl Query Types
117
- *
118
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
119
- */
120
- queryTypes() {
121
- return new Promise((resolve, reject) => {
122
- let data = {}
123
- this.cw.runRequest('General/EurlQuery/QueryTypes', data).then(r => {
124
- // console.log(r, 'response')
125
- resolve(r.Value)
126
- }).catch(e => {
127
- reject(e)
128
- })
129
- })
130
- }
131
-
132
- /**
133
- * Get Preferences for User
134
- *
135
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
136
- */
137
- preferences() {
138
- return new Promise((resolve, reject) => {
139
- let data = {}
140
- this.cw.runRequest('Ams/Preferences/User', data).then(r => {
141
- // console.log(r, 'response')
142
- resolve(r.Value)
143
- }).catch(e => {
144
- reject(e)
145
- })
146
- })
147
- }
148
-
149
- /**
150
- * Get Styles for event layers
151
- *
152
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
153
- */
154
- styles() {
155
- return new Promise((resolve, reject) => {
156
- let data = {}
157
- this.cw.runRequest('Ams/EventLayer/Styles', data).then(r => {
158
- // console.log(r, 'response')
159
- resolve(r.Value)
160
- }).catch(e => {
161
- reject(e)
162
- })
163
- })
164
- }
165
-
166
- /**
167
- * ??
168
- *
169
- * @param {Array<string>} preferenceNames - ["VisibleQeIds"]
170
- * @param {Array<string>} categories - ["qe-map"]
171
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
172
- */
173
- xxxxxx(preferenceNames: Array<string>, categories: Array<string>) {
174
- return new Promise((resolve, reject) => {
175
- let data = {"PreferenceNames": preferenceNames, "Categories": categories}
176
- this.cw.runRequest('Ams/Preferences/User', data).then(r => {
177
- // console.log(r, 'response')
178
- resolve(r.Value)
179
- }).catch(e => {
180
- reject(e);
181
- })
182
- })
183
- }
184
-
185
- /**
186
- * Get all event layers
187
- *
188
- * @param {boolean} includeDisabled - Defaults to false
189
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
190
- */
191
- getAllEventLayers(includeDisabled: boolean = false) {
192
- return new Promise((resolve, reject) => {
193
- let data = {"IncludeDisabled": includeDisabled}
194
- this.cw.runRequest('Ams/EventLayer/All', data).then(r => {
195
- // console.log(r, 'response')
196
- resolve(r.Value)
197
- }).catch(e => {
198
- reject(e)
199
- })
200
- })
201
- }
202
-
203
- /**
204
- * Filter event layers by provided search definitions
205
- *
206
- * @param {Array<number>} searchIds - Defaults to false
207
- * @param {Array<number>} eventLayerIds - Defaults to false
208
- * @return {Object} Returns Promise object which represents a xxxxx indicating xxxxxxx
209
- */
210
- filterEventLayersBySearches(searchIds: Array<number>, eventLayerIds: Array<number>) {
211
- return new Promise((resolve, reject) => {
212
- let data = {"SearchIds": searchIds, "EventLayerIds": eventLayerIds}
213
- this.cw.runRequest('Ams/EventLayer/Filters', data).then(r => {
214
- // console.log(r, 'response')
215
- resolve(r.Value)
216
- }).catch(e => {
217
- reject(e)
218
- })
219
- })
220
- }
221
-
222
- /**
223
- * eventLayer GIS endpoint, this may need to be a promise as well...
224
- *
225
- * @return {string} Returns string that is absolute URL for event layer GIS endpoint
226
- */
227
- getGISEndpoint(eventLayerId) {
228
- return this.cw.base_url + '/' + this.cw.settings.path + '/eventlayer/1/' + eventLayerId + '/rest/services/cw/FeatureServer/{#}?f=json'; // 1 for SR, 2 for WorkOrders, 3 for Inspections, 5 for PLL Cases
229
- }
230
-
231
- }
package/src/general.ts DELETED
@@ -1,143 +0,0 @@
1
- import { CWError } from './error'
2
- const _ = require('lodash')
3
-
4
- /**
5
- * A plugin that contains "general" methods for a Cityworks install
6
- */
7
- export class General {
8
- /**
9
- * @hidden
10
- */
11
- cw: any
12
-
13
- /**
14
- * @hidden
15
- */
16
- constructor(cw) {
17
- this.cw = cw
18
- }
19
-
20
- /**
21
- * Get notifications for currently authenticated user
22
- *
23
- * @return {Object} Returns Promise object that represents a collection of available notifications
24
- */
25
- notifications() {
26
- return new Promise((resolve, reject) => {
27
- this.cw.runRequest('General/ActivityNotification/User', {}).then((response: any) => {
28
- resolve(response.Value)
29
- }).catch(e => {
30
- reject(e)
31
- })
32
- })
33
- }
34
-
35
-
36
- /**
37
- * Find out if the current user is watching a particular activity (case, task, null [as a string])
38
- *
39
- * @param {string} activityType - which activity type the following ID will be for.
40
- * @param {number} activityId - activity Case or CaseTask (task instance) ID to check
41
- * @return {Object} Returns Promise object that represents a boolean indicating the currently authenticated user is watching the provided activity
42
- */
43
- amIWatching(activityType, activityId: number) {
44
- return new Promise((resolve, reject) => {
45
- let aType = {'null': 0, 'case': 1, 'task': 2}
46
- if(typeof(aType[activityType])=='undefined') {
47
- // reject with error
48
- reject(new CWError(1, "Activity type provided does not exist.", {provided: activityType, potential_activities: aType}))
49
- } else {
50
- let data = {"ActivityType": aType[activityType], "ActivityId": activityId}
51
- this.cw.runRequest('General/ActivityNotification/UserWatching', data).then(r => {
52
- // console.log(r, 'response')
53
- resolve(r.Value)
54
- }).catch(e => {
55
- reject(e)
56
- })
57
- }
58
- })
59
- }
60
-
61
- /**
62
- * Get CwMetatData by Type and CwSid
63
- *
64
- * @param {Array<number>} Ids
65
- * @param {string} TableName - INSPECTION, REQUEST, WORKORDER require View permission on the activities
66
- * @return {Object} Returns Promise object that represents a
67
- */
68
- getActivityMetadataByIds(ids: Array<number>, table: string) {
69
- return new Promise((resolve, reject) => {
70
- let tables = ["INSPECTION", "REQUEST", "WORKORDER"]
71
- if(_.indexOf(tables, table)==-1) {
72
- reject(new CWError(2, 'TableName provided does not exist or is mispelled.', {'provided': table, 'available':tables}))
73
- }
74
- let data = {
75
- "Ids": ids,
76
- "TableName": table
77
- }
78
- this.cw.runRequest('General/CwMetaData/ByTableNameSids', data).then(r => {
79
- console.log(r)
80
- resolve(r.Value)
81
- }).catch(e => {
82
- reject(e)
83
- })
84
- })
85
- }
86
-
87
- /**
88
- * Get recent history for authenticated user
89
- *
90
- * @return {Object} Returns Promise object that represents a collection of RecentActivity objects
91
- */
92
- getHistory() {
93
- return new Promise((resolve, reject) => {
94
- let data = {}
95
- this.cw.runRequest('Ams/Search/RecentActivity', data).then(r => {
96
- console.log(r)
97
- resolve(r.Value)
98
- }).catch(e => {
99
- reject(e)
100
- })
101
- })
102
- }
103
-
104
- /**
105
- * Get cost summary for WorkOrder entities
106
- *
107
- * @param {Array<number>} ObjectIds
108
- * @return {Object} Returns Promise object that represents a
109
- */
110
- getWOEntityCostSummary(object_ids: Array<number>) {
111
- return new Promise((resolve, reject) => {
112
- let data = {
113
- "ObjectIds": object_ids
114
- }
115
- this.cw.runRequest('General/CostSummary/WorkOrderEntity', data).then(r => {
116
- console.log(r)
117
- resolve(r.Value)
118
- }).catch(e => {
119
- reject(e)
120
- })
121
- })
122
- }
123
-
124
- /**
125
- * Get cost summary for WorkOrder entities selected through a search definition
126
- *
127
- * @param {number} SearchId - Search Definition Id
128
- * @return {Object} Returns Promise object that represents a
129
- */
130
- searchWOEntityCostSummary(search_id: number) {
131
- return new Promise((resolve, reject) => {
132
- let data = {
133
- "SearchId": search_id
134
- }
135
- this.cw.runRequest('General/CostSummary/WorkOrderEntitySearch', data).then(r => {
136
- console.log(r)
137
- resolve(r.Value)
138
- }).catch(e => {
139
- reject(e)
140
- })
141
- })
142
- }
143
- }
package/src/gis.ts DELETED
@@ -1,242 +0,0 @@
1
- import { CWError } from './error'
2
- const _ = require('lodash')
3
-
4
- export class Gis {
5
- /**
6
- * @hidden
7
- */
8
- cw: any
9
-
10
- /**
11
- * @hidden
12
- */
13
- constructor(cw) {
14
- this.cw = cw
15
- }
16
-
17
- /**
18
- * Get gis service configuration for user, group, domain, or service id
19
- *
20
- * @param {string} [whichType] - domain, group, mapservice, or user
21
- * @param {number} [whichId] - domain, group, mapservice, or user Id
22
- * @param {number} [getGisData] - If true, check for feature server JSON data, default is true
23
- * @param {Array<string>} [context] Filter returned list by specific context, i.e. Office, Field, Mobile, Public, etc. Default is all.
24
- * @return {Object} Returns Promise object that represents an Object with the desired GIS service definitions
25
- */
26
- getConfig(whichType, whichId, getGisData: boolean = true, context: Array<string> = []) {
27
- return new Promise((resolve, reject) => {
28
- let path = 'Gis/MapService/Domain'
29
- whichType = whichType.toLowerCase()
30
- let data: {DomainId?: any, GroupId?: any, MapServiceId?: any, UserId?: any, GetGisData: boolean, Security: Array<string>}
31
- switch(whichType) {
32
- case 'domain':
33
- data = {DomainId:whichId, GetGisData: getGisData, Security: context}
34
- break
35
- case 'group':
36
- data = {GroupId:whichId, GetGisData: getGisData, Security: context}
37
- break
38
- case 'mapservice':
39
- data = {MapServiceId:whichId, GetGisData: getGisData, Security: context}
40
- break
41
- case 'user':
42
- data = {UserId:whichId, GetGisData: getGisData, Security: context}
43
- break
44
- }
45
- this.cw.runRequest(path, {}).then((response: any) => {
46
- resolve(response.Value)
47
- }).catch(e => {
48
- reject(e)
49
- })
50
- })
51
- }
52
-
53
- /**
54
- * Get domain gis services
55
- *
56
- * @param {number} domainId - The mobile map cache Id to download
57
- * @return {Object} Returns Promise object that represents an Object with the domain's default GIS services
58
- */
59
- domain(domainId, getGisData: boolean = true) {
60
- return new Promise((resolve, reject) => {
61
- let path = 'Gis/MapService/Domain'
62
- let data = {
63
- DomainId: domainId
64
- }
65
- this.cw.runRequest(path, {}).then((response: any) => {
66
- resolve(response.Value)
67
- }).catch(e => {
68
- reject(e)
69
- })
70
- })
71
- }
72
-
73
- /**
74
- * Download mobile map cache
75
- *
76
- * @param {number} cacheId - The mobile map cache Id to download
77
- * @return {Object} Returns Promise object that represents a streaming download (?)
78
- */
79
- downloadMobile(cacheId, getGisData: boolean = true) {
80
- return new Promise((resolve, reject) => {
81
- let path = 'Gis/MapService/DownloadMobileMapCache'
82
- let data = {
83
- MobileMapCacheId: cacheId
84
- }
85
- this.cw.runRequest(path, {}).then((response: any) => {
86
- resolve(response.Value)
87
- }).catch(e => {
88
- reject(e)
89
- })
90
- })
91
- }
92
-
93
- /**
94
- * Get initial extent for user
95
- *
96
- * @return {Object} Returns Promise object that represents ... (?)
97
- */
98
- initialExtent() {
99
- return new Promise((resolve, reject) => {
100
- let path = 'Gis/MapService/InitialExtent'
101
- let data = {};
102
- this.cw.runRequest(path, {}).then((response: any) => {
103
- resolve(response.Value)
104
- }).catch(e => {
105
- reject(e)
106
- })
107
- })
108
- }
109
-
110
- /**
111
- * Get service request gis services
112
- *
113
- * @param {number} requestId - The WorkOrder to check against.
114
- * @param {boolean} getGisData - If true, check for feature server JSON data, default is true.
115
- * @return {Object} Returns Promise object that represents an Object with the specified request's entit(y|ies)
116
- */
117
- request(requestId, getGisData: boolean = true) {
118
- return new Promise((resolve, reject) => {
119
- let path = 'Gis/MapService/ServiceRequestConfiguration'
120
- let data = {
121
- RequestId: requestId,
122
- GetGisData: getGisData
123
- }
124
- this.cw.runRequest(path, {}).then((response: any) => {
125
- resolve(response.Value)
126
- }).catch(e => {
127
- reject(e)
128
- })
129
- })
130
- }
131
-
132
- /**
133
- * Get inspection gis services
134
- *
135
- * @param {number} inspectionId - The WorkOrder to check against.
136
- * @param {boolean} getGisData - If true, check for feature server JSON data, default is true.
137
- * @return {Object} Returns Promise object that represents an Object with the specified inspection's entity
138
- */
139
- inspection(inspectionId, getGisData: boolean = true) {
140
- return new Promise((resolve, reject) => {
141
- let path = 'Gis/MapService/InspectionConfiguration'
142
- let data = {
143
- InspectionId: inspectionId,
144
- GetGisData: getGisData
145
- }
146
- this.cw.runRequest(path, {}).then((response: any) => {
147
- resolve(response.Value)
148
- }).catch(e => {
149
- reject(e)
150
- })
151
- })
152
- }
153
-
154
- /**
155
- * Get workorder gis services
156
- *
157
- * @param {number} workOrderSid - The WorkOrder to check against.
158
- * @param {boolean} getGisData - If true, check for feature server JSON data, default is true.
159
- * @return {Object} Returns Promise object that represents an Object with the specified WorkOrder's entit(y|ies)
160
- */
161
- workOrder(workOrderSid, getGisData: boolean = true) {
162
- return new Promise((resolve, reject) => {
163
- let path = 'Gis/MapService/WorkOrderConfiguration'
164
- let data = {
165
- WorkOrderSid: workOrderSid,
166
- GetGisData: getGisData
167
- }
168
- this.cw.runRequest(path, {}).then((response: any) => {
169
- resolve(response.Value)
170
- }).catch(e => {
171
- reject(e)
172
- })
173
- })
174
- }
175
-
176
- /**
177
- * Get service request gis services
178
- *
179
- * @param {Array<string>} [context] Filter returned list by specific context, i.e. Office, Field, Mobile, Public, etc. Default is all.
180
- * @param {boolean} [allDomains] services assigned to any domain the user belongs to, default is true
181
- * @param {boolean} [allGroups] services assigned to any groups the user belongs to regardless of domain, default is true
182
- * @param {boolean} [getGisData] If true, check for feature server JSON data, default is true
183
- * @return {Object} Returns Promise object that represents an Object with the user's GIS services
184
- */
185
- user(context: Array<string> = [], allDomains: boolean = true, allGroups: boolean = true, getGisData: boolean = true) {
186
- return new Promise((resolve, reject) => {
187
- let path = 'Gis/MapService/User'
188
- let data = {
189
- AllDomains: allDomains,
190
- AllGroups: allGroups,
191
- GetGisData: getGisData,
192
- Security: context
193
- }
194
- this.cw.runRequest(path, {}).then((response: any) => {
195
- resolve(response.Value)
196
- }).catch(e => {
197
- reject(e)
198
- })
199
- })
200
- }
201
-
202
- /**
203
- * Get Geocode server info by ServerId
204
- *
205
- * @param {number} ServiceId
206
- * @return {Object} Returns Promise object that represents an object describing the provided Geocoder service configuration
207
- */
208
- // Gis/GeoCode/GeocodeServer
209
-
210
- /**
211
- * Get currently selected entities from the Cityworks install's session for your user
212
- * @return {Object} Returns Promise object that represents an Object with the currently-selected entities
213
- */
214
- selectedEntities() {
215
- return new Promise((resolve, reject) => {
216
- let path = 'General/AppData/SelectedEntities'
217
- this.cw.runRequest(path, {}).then((response: any) => {
218
- resolve(response.Value)
219
- }).catch(e => {
220
- reject(e)
221
- })
222
- })
223
- }
224
-
225
- /**
226
- * Get attributes available for provided entity
227
- *
228
- * @param {string} entityType - The entity type to describe
229
- * @return {Object} Returns Promise object that represents a collection of attribute description objects
230
- */
231
- getEntityAttributes(entityType:string) {
232
- return new Promise((resolve, reject) => {
233
- let data = {EntityType: entityType}
234
- let path = 'AMS/Entity/Attributes'
235
- this.cw.runRequest(path, data).then((response: any) => {
236
- resolve(response.Value)
237
- }).catch(e => {
238
- reject(e)
239
- })
240
- })
241
- }
242
- }
package/src/index.ts DELETED
@@ -1 +0,0 @@
1
- export { Cityworks } from './cityworks'