@furystack/rest-service 7.0.0 → 7.0.2

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.
Files changed (189) hide show
  1. package/{types → esm}/actions/error-action.d.ts +1 -1
  2. package/{types → esm}/actions/error-action.d.ts.map +1 -1
  3. package/esm/actions/error-action.js +25 -0
  4. package/esm/actions/error-action.js.map +1 -0
  5. package/{types → esm}/actions/get-current-user.d.ts +1 -1
  6. package/{types → esm}/actions/get-current-user.d.ts.map +1 -1
  7. package/esm/actions/get-current-user.js +12 -0
  8. package/esm/actions/get-current-user.js.map +1 -0
  9. package/esm/actions/index.d.ts +7 -0
  10. package/esm/actions/index.d.ts.map +1 -0
  11. package/esm/actions/index.js +7 -0
  12. package/esm/actions/index.js.map +1 -0
  13. package/{types → esm}/actions/is-authenticated.d.ts +1 -1
  14. package/{types → esm}/actions/is-authenticated.d.ts.map +1 -1
  15. package/esm/actions/is-authenticated.js +13 -0
  16. package/esm/actions/is-authenticated.js.map +1 -0
  17. package/{types → esm}/actions/login.d.ts +2 -2
  18. package/esm/actions/login.d.ts.map +1 -0
  19. package/esm/actions/login.js +22 -0
  20. package/esm/actions/login.js.map +1 -0
  21. package/{types → esm}/actions/logout.d.ts +1 -1
  22. package/{types → esm}/actions/logout.d.ts.map +1 -1
  23. package/esm/actions/logout.js +15 -0
  24. package/esm/actions/logout.js.map +1 -0
  25. package/{types → esm}/actions/not-found-action.d.ts +1 -1
  26. package/{types → esm}/actions/not-found-action.d.ts.map +1 -1
  27. package/esm/actions/not-found-action.js +10 -0
  28. package/esm/actions/not-found-action.js.map +1 -0
  29. package/{types → esm}/api-manager.d.ts +4 -4
  30. package/{types → esm}/api-manager.d.ts.map +1 -1
  31. package/esm/api-manager.js +153 -0
  32. package/esm/api-manager.js.map +1 -0
  33. package/{types → esm}/authenticate.d.ts +1 -1
  34. package/{types → esm}/authenticate.d.ts.map +1 -1
  35. package/esm/authenticate.js +16 -0
  36. package/esm/authenticate.js.map +1 -0
  37. package/{types → esm}/authorize.d.ts +1 -1
  38. package/{types → esm}/authorize.d.ts.map +1 -1
  39. package/esm/authorize.js +19 -0
  40. package/esm/authorize.js.map +1 -0
  41. package/{types → esm}/endpoint-generators/create-delete-endpoint.d.ts +1 -1
  42. package/{types → esm}/endpoint-generators/create-delete-endpoint.d.ts.map +1 -1
  43. package/esm/endpoint-generators/create-delete-endpoint.js +20 -0
  44. package/esm/endpoint-generators/create-delete-endpoint.js.map +1 -0
  45. package/{types → esm}/endpoint-generators/create-get-collection-endpoint.d.ts +1 -1
  46. package/{types → esm}/endpoint-generators/create-get-collection-endpoint.d.ts.map +1 -1
  47. package/esm/endpoint-generators/create-get-collection-endpoint.js +22 -0
  48. package/esm/endpoint-generators/create-get-collection-endpoint.js.map +1 -0
  49. package/{types → esm}/endpoint-generators/create-get-entity-endpoint.d.ts +1 -1
  50. package/{types → esm}/endpoint-generators/create-get-entity-endpoint.d.ts.map +1 -1
  51. package/esm/endpoint-generators/create-get-entity-endpoint.js +25 -0
  52. package/esm/endpoint-generators/create-get-entity-endpoint.js.map +1 -0
  53. package/{types → esm}/endpoint-generators/create-patch-endpoint.d.ts +1 -1
  54. package/{types → esm}/endpoint-generators/create-patch-endpoint.d.ts.map +1 -1
  55. package/esm/endpoint-generators/create-patch-endpoint.js +22 -0
  56. package/esm/endpoint-generators/create-patch-endpoint.js.map +1 -0
  57. package/{types → esm}/endpoint-generators/create-post-endpoint.d.ts +1 -1
  58. package/{types → esm}/endpoint-generators/create-post-endpoint.d.ts.map +1 -1
  59. package/esm/endpoint-generators/create-post-endpoint.js +25 -0
  60. package/esm/endpoint-generators/create-post-endpoint.js.map +1 -0
  61. package/esm/endpoint-generators/index.d.ts +6 -0
  62. package/{types → esm}/endpoint-generators/index.d.ts.map +1 -1
  63. package/esm/endpoint-generators/index.js +6 -0
  64. package/esm/endpoint-generators/index.js.map +1 -0
  65. package/esm/endpoint-generators/utils.js +23 -0
  66. package/esm/endpoint-generators/utils.js.map +1 -0
  67. package/{types → esm}/helpers.d.ts +4 -4
  68. package/esm/helpers.d.ts.map +1 -0
  69. package/esm/helpers.js +28 -0
  70. package/esm/helpers.js.map +1 -0
  71. package/{types → esm}/http-authentication-settings.d.ts +1 -1
  72. package/{types → esm}/http-authentication-settings.d.ts.map +1 -1
  73. package/esm/http-authentication-settings.js +26 -0
  74. package/esm/http-authentication-settings.js.map +1 -0
  75. package/{types → esm}/http-user-context.d.ts +2 -2
  76. package/{types → esm}/http-user-context.d.ts.map +1 -1
  77. package/esm/http-user-context.js +168 -0
  78. package/esm/http-user-context.js.map +1 -0
  79. package/esm/incoming-message-extensions.js +11 -0
  80. package/esm/incoming-message-extensions.js.map +1 -0
  81. package/esm/index.d.ts +19 -0
  82. package/esm/index.d.ts.map +1 -0
  83. package/esm/index.js +19 -0
  84. package/esm/index.js.map +1 -0
  85. package/esm/mime-types.js +333 -0
  86. package/esm/mime-types.js.map +1 -0
  87. package/esm/models/cors-options.js +2 -0
  88. package/esm/models/cors-options.js.map +1 -0
  89. package/esm/models/default-session.js +6 -0
  90. package/esm/models/default-session.js.map +1 -0
  91. package/esm/models/index.d.ts +3 -0
  92. package/esm/models/index.d.ts.map +1 -0
  93. package/esm/models/index.js +3 -0
  94. package/esm/models/index.js.map +1 -0
  95. package/esm/request-action-implementation.js +34 -0
  96. package/esm/request-action-implementation.js.map +1 -0
  97. package/esm/schema-validator/index.d.ts +3 -0
  98. package/{types → esm}/schema-validator/index.d.ts.map +1 -1
  99. package/esm/schema-validator/index.js +3 -0
  100. package/esm/schema-validator/index.js.map +1 -0
  101. package/esm/schema-validator/schema-validation-error.js +11 -0
  102. package/esm/schema-validator/schema-validation-error.js.map +1 -0
  103. package/esm/schema-validator/schema-validator.js +31 -0
  104. package/esm/schema-validator/schema-validator.js.map +1 -0
  105. package/esm/schema-validator/validate-examples.js +26 -0
  106. package/esm/schema-validator/validate-examples.js.map +1 -0
  107. package/{types → esm}/server-manager.d.ts +1 -1
  108. package/esm/server-manager.js +73 -0
  109. package/esm/server-manager.js.map +1 -0
  110. package/{types → esm}/server-response-extensions.d.ts +1 -1
  111. package/{types → esm}/server-response-extensions.d.ts.map +1 -1
  112. package/esm/server-response-extensions.js +12 -0
  113. package/esm/server-response-extensions.js.map +1 -0
  114. package/{types → esm}/static-server-manager.d.ts +1 -1
  115. package/esm/static-server-manager.js +68 -0
  116. package/esm/static-server-manager.js.map +1 -0
  117. package/{types → esm}/utils.d.ts +1 -1
  118. package/{types → esm}/utils.d.ts.map +1 -1
  119. package/esm/utils.js +70 -0
  120. package/esm/utils.js.map +1 -0
  121. package/{types → esm}/validate.d.ts +1 -1
  122. package/{types → esm}/validate.d.ts.map +1 -1
  123. package/esm/validate.integration.schema.js +2 -0
  124. package/esm/validate.integration.schema.js.map +1 -0
  125. package/esm/validate.integration.spec.schema.json +903 -0
  126. package/esm/validate.js +43 -0
  127. package/esm/validate.js.map +1 -0
  128. package/package.json +11 -20
  129. package/src/actions/error-action.ts +3 -3
  130. package/src/actions/get-current-user.ts +3 -3
  131. package/src/actions/index.ts +6 -6
  132. package/src/actions/is-authenticated.ts +2 -2
  133. package/src/actions/login.ts +4 -4
  134. package/src/actions/logout.ts +3 -3
  135. package/src/actions/not-found-action.ts +2 -2
  136. package/src/api-manager.ts +10 -9
  137. package/src/authenticate.ts +3 -3
  138. package/src/authorize.ts +2 -2
  139. package/src/endpoint-generators/create-delete-endpoint.ts +2 -2
  140. package/src/endpoint-generators/create-get-collection-endpoint.ts +2 -2
  141. package/src/endpoint-generators/create-get-entity-endpoint.ts +2 -2
  142. package/src/endpoint-generators/create-patch-endpoint.ts +2 -2
  143. package/src/endpoint-generators/create-post-endpoint.ts +2 -2
  144. package/src/endpoint-generators/index.ts +5 -5
  145. package/src/endpoint-generators/utils.ts +1 -1
  146. package/src/helpers.ts +6 -6
  147. package/src/http-authentication-settings.ts +1 -1
  148. package/src/http-user-context.ts +2 -2
  149. package/src/incoming-message-extensions.ts +1 -1
  150. package/src/index.ts +18 -18
  151. package/src/models/index.ts +2 -2
  152. package/src/schema-validator/index.ts +2 -2
  153. package/src/schema-validator/schema-validator.ts +3 -3
  154. package/src/server-response-extensions.ts +1 -1
  155. package/src/static-server-manager.ts +2 -2
  156. package/src/utils.ts +1 -1
  157. package/src/validate.ts +2 -2
  158. package/types/actions/index.d.ts +0 -7
  159. package/types/actions/index.d.ts.map +0 -1
  160. package/types/actions/login.d.ts.map +0 -1
  161. package/types/endpoint-generators/index.d.ts +0 -6
  162. package/types/helpers.d.ts.map +0 -1
  163. package/types/index.d.ts +0 -19
  164. package/types/index.d.ts.map +0 -1
  165. package/types/models/index.d.ts +0 -3
  166. package/types/models/index.d.ts.map +0 -1
  167. package/types/schema-validator/index.d.ts +0 -3
  168. /package/{types → esm}/endpoint-generators/utils.d.ts +0 -0
  169. /package/{types → esm}/endpoint-generators/utils.d.ts.map +0 -0
  170. /package/{types → esm}/incoming-message-extensions.d.ts +0 -0
  171. /package/{types → esm}/incoming-message-extensions.d.ts.map +0 -0
  172. /package/{types → esm}/mime-types.d.ts +0 -0
  173. /package/{types → esm}/mime-types.d.ts.map +0 -0
  174. /package/{types → esm}/models/cors-options.d.ts +0 -0
  175. /package/{types → esm}/models/cors-options.d.ts.map +0 -0
  176. /package/{types → esm}/models/default-session.d.ts +0 -0
  177. /package/{types → esm}/models/default-session.d.ts.map +0 -0
  178. /package/{types → esm}/request-action-implementation.d.ts +0 -0
  179. /package/{types → esm}/request-action-implementation.d.ts.map +0 -0
  180. /package/{types → esm}/schema-validator/schema-validation-error.d.ts +0 -0
  181. /package/{types → esm}/schema-validator/schema-validation-error.d.ts.map +0 -0
  182. /package/{types → esm}/schema-validator/schema-validator.d.ts +0 -0
  183. /package/{types → esm}/schema-validator/schema-validator.d.ts.map +0 -0
  184. /package/{types → esm}/schema-validator/validate-examples.d.ts +0 -0
  185. /package/{types → esm}/schema-validator/validate-examples.d.ts.map +0 -0
  186. /package/{types → esm}/server-manager.d.ts.map +0 -0
  187. /package/{types → esm}/static-server-manager.d.ts.map +0 -0
  188. /package/{types → esm}/validate.integration.schema.d.ts +0 -0
  189. /package/{types → esm}/validate.integration.schema.d.ts.map +0 -0
@@ -0,0 +1,333 @@
1
+ import path from 'path';
2
+ export const mimeTypes = {
3
+ 'application/andrew-inset': ['ez'],
4
+ 'application/applixware': ['aw'],
5
+ 'application/atom+xml': ['atom'],
6
+ 'application/atomcat+xml': ['atomcat'],
7
+ 'application/atomdeleted+xml': ['atomdeleted'],
8
+ 'application/atomsvc+xml': ['atomsvc'],
9
+ 'application/atsc-dwd+xml': ['dwd'],
10
+ 'application/atsc-held+xml': ['held'],
11
+ 'application/atsc-rsat+xml': ['rsat'],
12
+ 'application/bdoc': ['bdoc'],
13
+ 'application/calendar+xml': ['xcs'],
14
+ 'application/ccxml+xml': ['ccxml'],
15
+ 'application/cdfx+xml': ['cdfx'],
16
+ 'application/cdmi-capability': ['cdmia'],
17
+ 'application/cdmi-container': ['cdmic'],
18
+ 'application/cdmi-domain': ['cdmid'],
19
+ 'application/cdmi-object': ['cdmio'],
20
+ 'application/cdmi-queue': ['cdmiq'],
21
+ 'application/cu-seeme': ['cu'],
22
+ 'application/dash+xml': ['mpd'],
23
+ 'application/davmount+xml': ['davmount'],
24
+ 'application/docbook+xml': ['dbk'],
25
+ 'application/dssc+der': ['dssc'],
26
+ 'application/dssc+xml': ['xdssc'],
27
+ 'application/ecmascript': ['es', 'ecma'],
28
+ 'application/emma+xml': ['emma'],
29
+ 'application/emotionml+xml': ['emotionml'],
30
+ 'application/epub+zip': ['epub'],
31
+ 'application/exi': ['exi'],
32
+ 'application/express': ['exp'],
33
+ 'application/fdt+xml': ['fdt'],
34
+ 'application/font-tdpfr': ['pfr'],
35
+ 'application/geo+json': ['geojson'],
36
+ 'application/gml+xml': ['gml'],
37
+ 'application/gpx+xml': ['gpx'],
38
+ 'application/gxf': ['gxf'],
39
+ 'application/gzip': ['gz'],
40
+ 'application/hjson': ['hjson'],
41
+ 'application/hyperstudio': ['stk'],
42
+ 'application/inkml+xml': ['ink', 'inkml'],
43
+ 'application/ipfix': ['ipfix'],
44
+ 'application/its+xml': ['its'],
45
+ 'application/java-archive': ['jar', 'war', 'ear'],
46
+ 'application/java-serialized-object': ['ser'],
47
+ 'application/java-vm': ['class'],
48
+ 'application/javascript': ['js', 'mjs'],
49
+ 'application/json': ['json', 'map'],
50
+ 'application/json5': ['json5'],
51
+ 'application/jsonml+json': ['jsonml'],
52
+ 'application/ld+json': ['jsonld'],
53
+ 'application/lgr+xml': ['lgr'],
54
+ 'application/lost+xml': ['lostxml'],
55
+ 'application/mac-binhex40': ['hqx'],
56
+ 'application/mac-compactpro': ['cpt'],
57
+ 'application/mads+xml': ['mads'],
58
+ 'application/manifest+json': ['webmanifest'],
59
+ 'application/marc': ['mrc'],
60
+ 'application/marcxml+xml': ['mrcx'],
61
+ 'application/mathematica': ['ma', 'nb', 'mb'],
62
+ 'application/mathml+xml': ['mathml'],
63
+ 'application/mbox': ['mbox'],
64
+ 'application/mediaservercontrol+xml': ['mscml'],
65
+ 'application/metalink+xml': ['metalink'],
66
+ 'application/metalink4+xml': ['meta4'],
67
+ 'application/mets+xml': ['mets'],
68
+ 'application/mmt-aei+xml': ['maei'],
69
+ 'application/mmt-usd+xml': ['musd'],
70
+ 'application/mods+xml': ['mods'],
71
+ 'application/mp21': ['m21', 'mp21'],
72
+ 'application/mp4': ['mp4s', 'm4p'],
73
+ 'application/msword': ['doc', 'dot'],
74
+ 'application/mxf': ['mxf'],
75
+ 'application/n-quads': ['nq'],
76
+ 'application/n-triples': ['nt'],
77
+ 'application/node': ['cjs'],
78
+ 'application/octet-stream': [
79
+ 'bin',
80
+ 'dms',
81
+ 'lrf',
82
+ 'mar',
83
+ 'so',
84
+ 'dist',
85
+ 'distz',
86
+ 'pkg',
87
+ 'bpk',
88
+ 'dump',
89
+ 'elc',
90
+ 'deploy',
91
+ 'exe',
92
+ 'dll',
93
+ 'deb',
94
+ 'dmg',
95
+ 'iso',
96
+ 'img',
97
+ 'msi',
98
+ 'msp',
99
+ 'msm',
100
+ 'buffer',
101
+ ],
102
+ 'application/oda': ['oda'],
103
+ 'application/oebps-package+xml': ['opf'],
104
+ 'application/ogg': ['ogx'],
105
+ 'application/omdoc+xml': ['omdoc'],
106
+ 'application/onenote': ['onetoc', 'onetoc2', 'onetmp', 'onepkg'],
107
+ 'application/oxps': ['oxps'],
108
+ 'application/p2p-overlay+xml': ['relo'],
109
+ 'application/patch-ops-error+xml': ['xer'],
110
+ 'application/pdf': ['pdf'],
111
+ 'application/pgp-encrypted': ['pgp'],
112
+ 'application/pgp-signature': ['asc', 'sig'],
113
+ 'application/pics-rules': ['prf'],
114
+ 'application/pkcs10': ['p10'],
115
+ 'application/pkcs7-mime': ['p7m', 'p7c'],
116
+ 'application/pkcs7-signature': ['p7s'],
117
+ 'application/pkcs8': ['p8'],
118
+ 'application/pkix-attr-cert': ['ac'],
119
+ 'application/pkix-cert': ['cer'],
120
+ 'application/pkix-crl': ['crl'],
121
+ 'application/pkix-pkipath': ['pkipath'],
122
+ 'application/pkixcmp': ['pki'],
123
+ 'application/pls+xml': ['pls'],
124
+ 'application/postscript': ['ai', 'eps', 'ps'],
125
+ 'application/provenance+xml': ['provx'],
126
+ 'application/pskc+xml': ['pskcxml'],
127
+ 'application/raml+yaml': ['raml'],
128
+ 'application/rdf+xml': ['rdf', 'owl'],
129
+ 'application/reginfo+xml': ['rif'],
130
+ 'application/relax-ng-compact-syntax': ['rnc'],
131
+ 'application/resource-lists+xml': ['rl'],
132
+ 'application/resource-lists-diff+xml': ['rld'],
133
+ 'application/rls-services+xml': ['rs'],
134
+ 'application/route-apd+xml': ['rapd'],
135
+ 'application/route-s-tsid+xml': ['sls'],
136
+ 'application/route-usd+xml': ['rusd'],
137
+ 'application/rpki-ghostbusters': ['gbr'],
138
+ 'application/rpki-manifest': ['mft'],
139
+ 'application/rpki-roa': ['roa'],
140
+ 'application/rsd+xml': ['rsd'],
141
+ 'application/rss+xml': ['rss'],
142
+ 'application/rtf': ['rtf'],
143
+ 'application/sbml+xml': ['sbml'],
144
+ 'application/scvp-cv-request': ['scq'],
145
+ 'application/scvp-cv-response': ['scs'],
146
+ 'application/scvp-vp-request': ['spq'],
147
+ 'application/scvp-vp-response': ['spp'],
148
+ 'application/sdp': ['sdp'],
149
+ 'application/senml+xml': ['senmlx'],
150
+ 'application/sensml+xml': ['sensmlx'],
151
+ 'application/set-payment-initiation': ['setpay'],
152
+ 'application/set-registration-initiation': ['setreg'],
153
+ 'application/shf+xml': ['shf'],
154
+ 'application/sieve': ['siv', 'sieve'],
155
+ 'application/smil+xml': ['smi', 'smil'],
156
+ 'application/sparql-query': ['rq'],
157
+ 'application/sparql-results+xml': ['srx'],
158
+ 'application/srgs': ['gram'],
159
+ 'application/srgs+xml': ['grxml'],
160
+ 'application/sru+xml': ['sru'],
161
+ 'application/ssdl+xml': ['ssdl'],
162
+ 'application/ssml+xml': ['ssml'],
163
+ 'application/swid+xml': ['swidtag'],
164
+ 'application/tei+xml': ['tei', 'teicorpus'],
165
+ 'application/thraud+xml': ['tfi'],
166
+ 'application/timestamped-data': ['tsd'],
167
+ 'application/toml': ['toml'],
168
+ 'application/trig': ['trig'],
169
+ 'application/ttml+xml': ['ttml'],
170
+ 'application/ubjson': ['ubj'],
171
+ 'application/urc-ressheet+xml': ['rsheet'],
172
+ 'application/urc-targetdesc+xml': ['td'],
173
+ 'application/voicexml+xml': ['vxml'],
174
+ 'application/wasm': ['wasm'],
175
+ 'application/widget': ['wgt'],
176
+ 'application/winhlp': ['hlp'],
177
+ 'application/wsdl+xml': ['wsdl'],
178
+ 'application/wspolicy+xml': ['wspolicy'],
179
+ 'application/xaml+xml': ['xaml'],
180
+ 'application/xcap-att+xml': ['xav'],
181
+ 'application/xcap-caps+xml': ['xca'],
182
+ 'application/xcap-diff+xml': ['xdf'],
183
+ 'application/xcap-el+xml': ['xel'],
184
+ 'application/xcap-ns+xml': ['xns'],
185
+ 'application/xenc+xml': ['xenc'],
186
+ 'application/xhtml+xml': ['xhtml', 'xht'],
187
+ 'application/xliff+xml': ['xlf'],
188
+ 'application/xml': ['xml', 'xsl', 'xsd', 'rng'],
189
+ 'application/xml-dtd': ['dtd'],
190
+ 'application/xop+xml': ['xop'],
191
+ 'application/xproc+xml': ['xpl'],
192
+ 'application/xslt+xml': ['(.)+xsl', 'xslt'],
193
+ 'application/xspf+xml': ['xspf'],
194
+ 'application/xv+xml': ['mxml', 'xhvml', 'xvml', 'xvm'],
195
+ 'application/yang': ['yang'],
196
+ 'application/yin+xml': ['yin'],
197
+ 'application/zip': ['zip'],
198
+ 'audio/3gpp': ['(.)+3gpp'],
199
+ 'audio/adpcm': ['adp'],
200
+ 'audio/amr': ['amr'],
201
+ 'audio/basic': ['au', 'snd'],
202
+ 'audio/midi': ['mid', 'midi', 'kar', 'rmi'],
203
+ 'audio/mobile-xmf': ['mxmf'],
204
+ 'audio/mp3': ['(.)+mp3'],
205
+ 'audio/mp4': ['m4a', 'mp4a'],
206
+ 'audio/mpeg': ['mpga', 'mp2', 'mp2a', 'mp3', 'm2a', 'm3a'],
207
+ 'audio/ogg': ['oga', 'ogg', 'spx', 'opus'],
208
+ 'audio/s3m': ['s3m'],
209
+ 'audio/silk': ['sil'],
210
+ 'audio/wav': ['wav'],
211
+ 'audio/wave': ['(.)+wav'],
212
+ 'audio/webm': ['weba'],
213
+ 'audio/xm': ['xm'],
214
+ 'font/collection': ['ttc'],
215
+ 'font/otf': ['otf'],
216
+ 'font/ttf': ['ttf'],
217
+ 'font/woff': ['woff'],
218
+ 'font/woff2': ['woff2'],
219
+ 'image/aces': ['exr'],
220
+ 'image/apng': ['apng'],
221
+ 'image/avif': ['avif'],
222
+ 'image/bmp': ['bmp'],
223
+ 'image/cgm': ['cgm'],
224
+ 'image/dicom-rle': ['drle'],
225
+ 'image/emf': ['emf'],
226
+ 'image/fits': ['fits'],
227
+ 'image/g3fax': ['g3'],
228
+ 'image/gif': ['gif'],
229
+ 'image/heic': ['heic'],
230
+ 'image/heic-sequence': ['heics'],
231
+ 'image/heif': ['heif'],
232
+ 'image/heif-sequence': ['heifs'],
233
+ 'image/hej2k': ['hej2'],
234
+ 'image/hsj2': ['hsj2'],
235
+ 'image/ief': ['ief'],
236
+ 'image/jls': ['jls'],
237
+ 'image/jp2': ['jp2', 'jpg2'],
238
+ 'image/jpeg': ['jpeg', 'jpg', 'jpe'],
239
+ 'image/jph': ['jph'],
240
+ 'image/jphc': ['jhc'],
241
+ 'image/jpm': ['jpm'],
242
+ 'image/jpx': ['jpx', 'jpf'],
243
+ 'image/jxr': ['jxr'],
244
+ 'image/jxra': ['jxra'],
245
+ 'image/jxrs': ['jxrs'],
246
+ 'image/jxs': ['jxs'],
247
+ 'image/jxsc': ['jxsc'],
248
+ 'image/jxsi': ['jxsi'],
249
+ 'image/jxss': ['jxss'],
250
+ 'image/ktx': ['ktx'],
251
+ 'image/ktx2': ['ktx2'],
252
+ 'image/png': ['png'],
253
+ 'image/sgi': ['sgi'],
254
+ 'image/svg+xml': ['svg', 'svgz'],
255
+ 'image/t38': ['t38'],
256
+ 'image/tiff': ['tif', 'tiff'],
257
+ 'image/tiff-fx': ['tfx'],
258
+ 'image/webp': ['webp'],
259
+ 'image/wmf': ['wmf'],
260
+ 'message/disposition-notification': ['disposition-notification'],
261
+ 'message/global': ['u8msg'],
262
+ 'message/global-delivery-status': ['u8dsn'],
263
+ 'message/global-disposition-notification': ['u8mdn'],
264
+ 'message/global-headers': ['u8hdr'],
265
+ 'message/rfc822': ['eml', 'mime'],
266
+ 'model/3mf': ['3mf'],
267
+ 'model/gltf+json': ['gltf'],
268
+ 'model/gltf-binary': ['glb'],
269
+ 'model/iges': ['igs', 'iges'],
270
+ 'model/mesh': ['msh', 'mesh', 'silo'],
271
+ 'model/mtl': ['mtl'],
272
+ 'model/obj': ['obj'],
273
+ 'model/step+xml': ['stpx'],
274
+ 'model/step+zip': ['stpz'],
275
+ 'model/step-xml+zip': ['stpxz'],
276
+ 'model/stl': ['stl'],
277
+ 'model/vrml': ['wrl', 'vrml'],
278
+ 'model/x3d+binary': ['(.)+x3db', 'x3dbz'],
279
+ 'model/x3d+fastinfoset': ['x3db'],
280
+ 'model/x3d+vrml': ['(.)+x3dv', 'x3dvz'],
281
+ 'model/x3d+xml': ['x3d', 'x3dz'],
282
+ 'model/x3d-vrml': ['x3dv'],
283
+ 'text/cache-manifest': ['appcache', 'manifest'],
284
+ 'text/calendar': ['ics', 'ifb'],
285
+ 'text/coffeescript': ['coffee', 'litcoffee'],
286
+ 'text/css': ['css'],
287
+ 'text/csv': ['csv'],
288
+ 'text/html': ['html', 'htm', 'shtml'],
289
+ 'text/jade': ['jade'],
290
+ 'text/jsx': ['jsx'],
291
+ 'text/less': ['less'],
292
+ 'text/markdown': ['markdown', 'md'],
293
+ 'text/mathml': ['mml'],
294
+ 'text/mdx': ['mdx'],
295
+ 'text/n3': ['n3'],
296
+ 'text/plain': ['txt', 'text', 'conf', 'def', 'list', 'log', 'in', 'ini'],
297
+ 'text/richtext': ['rtx'],
298
+ 'text/rtf': ['(.)+rtf'],
299
+ 'text/sgml': ['sgml', 'sgm'],
300
+ 'text/shex': ['shex'],
301
+ 'text/slim': ['slim', 'slm'],
302
+ 'text/spdx': ['spdx'],
303
+ 'text/stylus': ['stylus', 'styl'],
304
+ 'text/tab-separated-values': ['tsv'],
305
+ 'text/troff': ['t', 'tr', 'roff', 'man', 'me', 'ms'],
306
+ 'text/turtle': ['ttl'],
307
+ 'text/uri-list': ['uri', 'uris', 'urls'],
308
+ 'text/vcard': ['vcard'],
309
+ 'text/vtt': ['vtt'],
310
+ 'text/xml': ['(.)+xml'],
311
+ 'text/yaml': ['yaml', 'yml'],
312
+ 'video/3gpp': ['3gp', '3gpp'],
313
+ 'video/3gpp2': ['3g2'],
314
+ 'video/h261': ['h261'],
315
+ 'video/h263': ['h263'],
316
+ 'video/h264': ['h264'],
317
+ 'video/iso.segment': ['m4s'],
318
+ 'video/jpeg': ['jpgv'],
319
+ 'video/jpm': ['(.)+jpm', 'jpgm'],
320
+ 'video/mj2': ['mj2', 'mjp2'],
321
+ 'video/mp2t': ['ts'],
322
+ 'video/mp4': ['mp4', 'mp4v', 'mpg4'],
323
+ 'video/mpeg': ['mpeg', 'mpg', 'mpe', 'm1v', 'm2v'],
324
+ 'video/ogg': ['ogv'],
325
+ 'video/quicktime': ['qt', 'mov'],
326
+ 'video/webm': ['webm'],
327
+ };
328
+ export const getMimeForFile = (file) => {
329
+ const ext = path.extname(file);
330
+ return (Object.entries(mimeTypes).find(([, values]) => values.some((value) => ext.match(`^.${value}$`)))?.[0] ||
331
+ 'application/octet-stream');
332
+ };
333
+ //# sourceMappingURL=mime-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mime-types.js","sourceRoot":"","sources":["../src/mime-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cors-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cors-options.js","sourceRoot":"","sources":["../../src/models/cors-options.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Model class that defines the default session data
3
+ */
4
+ export class DefaultSession {
5
+ }
6
+ //# sourceMappingURL=default-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-session.js","sourceRoot":"","sources":["../../src/models/default-session.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,cAAc;CAU1B"}
@@ -0,0 +1,3 @@
1
+ export * from './cors-options.js';
2
+ export * from './default-session.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './cors-options.js';
2
+ export * from './default-session.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA"}
@@ -0,0 +1,34 @@
1
+ export const JsonResult = (chunk, statusCode = 200, headers) => ({
2
+ statusCode,
3
+ chunk,
4
+ headers: {
5
+ ...headers,
6
+ 'Content-Type': 'application/json',
7
+ },
8
+ });
9
+ export const PlainTextResult = (text, statusCode = 200, headers) => ({
10
+ statusCode,
11
+ chunk: text,
12
+ headers: {
13
+ ...headers,
14
+ 'Content-Type': 'plain/text',
15
+ },
16
+ });
17
+ export const XmlResult = (text, statusCode = 200, headers) => ({
18
+ statusCode,
19
+ chunk: text,
20
+ headers: {
21
+ ...headers,
22
+ 'Content-Type': 'application/xml;charset=utf-8',
23
+ },
24
+ });
25
+ export const EmptyResult = (statusCode = 200, headers) => ({
26
+ statusCode,
27
+ headers: {
28
+ ...headers,
29
+ },
30
+ });
31
+ export const BypassResult = () => ({
32
+ chunk: 'BypassResult',
33
+ });
34
+ //# sourceMappingURL=request-action-implementation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-action-implementation.js","sourceRoot":"","sources":["../src/request-action-implementation.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAmB,KAAQ,EAAE,UAAU,GAAG,GAAG,EAAE,OAAiC,EAAE,EAAE,CAC5G,CAAC;IACC,UAAU;IACV,KAAK;IACL,OAAO,EAAE;QACP,GAAG,OAAO;QACV,cAAc,EAAE,kBAAkB;KACnC;CACkB,CAAA,CAAA;AAEvB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,UAAU,GAAG,GAAG,EAAE,OAAiC,EAAE,EAAE,CACnG,CAAC;IACC,UAAU;IACV,KAAK,EAAE,IAAI;IACX,OAAO,EAAE;QACP,GAAG,OAAO;QACV,cAAc,EAAE,YAAY;KAC7B;CACuB,CAAA,CAAA;AAE5B,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,UAAU,GAAG,GAAG,EAAE,OAAiC,EAAE,EAAE,CAC7F,CAAC;IACC,UAAU;IACV,KAAK,EAAE,IAAI;IACX,OAAO,EAAE;QACP,GAAG,OAAO;QACV,cAAc,EAAE,+BAA+B;KAChD;CACuB,CAAA,CAAA;AAE5B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,UAAU,GAAG,GAAG,EAAE,OAAiC,EAAE,EAAE,CACjF,CAAC;IACC,UAAU;IACV,OAAO,EAAE;QACP,GAAG,OAAO;KACX;CAC0B,CAAA,CAAA;AAE/B,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAC/B,CAAC;IACC,KAAK,EAAE,cAAc;CACW,CAAA,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './schema-validator.js';
2
+ export * from './schema-validation-error.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema-validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,2BAA2B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema-validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './schema-validator.js';
2
+ export * from './schema-validation-error.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { RequestError } from '@furystack/rest';
2
+ /**
3
+ * Custom Error class for Schema Validation Errors
4
+ */
5
+ export class SchemaValidationError extends RequestError {
6
+ constructor(errors) {
7
+ super('Schema Validation failed', 400);
8
+ this.errors = errors;
9
+ }
10
+ }
11
+ //# sourceMappingURL=schema-validation-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-validation-error.js","sourceRoot":"","sources":["../../src/schema-validator/schema-validation-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,YAAY;IACrD,YAA4B,MAAqB;QAC/C,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAA;QADZ,WAAM,GAAN,MAAM,CAAe;IAEjD,CAAC;CACF"}
@@ -0,0 +1,31 @@
1
+ import Ajv from 'ajv';
2
+ import useFormats from 'ajv-formats';
3
+ import { SchemaValidationError } from './schema-validation-error.js';
4
+ export class SchemaValidator {
5
+ constructor(schema, ajvOptions) {
6
+ this.schema = schema;
7
+ this.ajvOptions = ajvOptions;
8
+ this.ajv = new Ajv.default({
9
+ allErrors: true,
10
+ ...this.ajvOptions,
11
+ });
12
+ useFormats.default(this.ajv);
13
+ }
14
+ /**
15
+ * @param data The object to validate
16
+ * @param options Options for the schema validation
17
+ * @param options.schemaName The name of the type in the Schema Definitions
18
+ * @throws SchemaValidationError when the validation has been failed
19
+ * @returns true in case of validation success
20
+ */
21
+ isValid(data, options) {
22
+ const schema = { ...this.schema, $ref: `#/definitions/${options.schemaName}` };
23
+ const validatorFn = this.ajv.compile(schema);
24
+ const isValid = validatorFn(data);
25
+ if (!isValid) {
26
+ throw new SchemaValidationError(validatorFn.errors);
27
+ }
28
+ return true;
29
+ }
30
+ }
31
+ //# sourceMappingURL=schema-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../src/schema-validator/schema-validator.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,UAAU,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AAEpE,MAAM,OAAO,eAAe;IAK1B,YAA6B,MAAe,EAAmB,UAAoB;QAAtD,WAAM,GAAN,MAAM,CAAS;QAAmB,eAAU,GAAV,UAAU,CAAU;QAJlE,QAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC;YACrC,SAAS,EAAE,IAAI;YACf,GAAG,IAAI,CAAC,UAAU;SACnB,CAAC,CAAA;QAEA,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED;;;;;;OAMG;IACI,OAAO,CAAI,IAAS,EAAE,OAAqD;QAChF,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,iBAAiB,OAAO,CAAC,UAAoB,EAAE,EAAE,CAAA;QACxF,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,qBAAqB,CAAC,WAAW,CAAC,MAAuB,CAAC,CAAA;SACrE;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Example Schema Definition - can be generated from the example types above with ts-json-schema-generator
3
+ */
4
+ export const exampleSchema = {
5
+ $schema: 'http://json-schema.org/draft-07/schema#',
6
+ definitions: {
7
+ BodyParameters: {
8
+ additionalProperties: false,
9
+ properties: {
10
+ age: {
11
+ type: 'string',
12
+ },
13
+ gender: {
14
+ enum: ['MALE', 'FEMALE'],
15
+ type: 'string',
16
+ },
17
+ },
18
+ type: 'object',
19
+ },
20
+ Language: {
21
+ enum: ['en', 'hu', 'de', 'all'],
22
+ type: 'string',
23
+ },
24
+ },
25
+ };
26
+ //# sourceMappingURL=validate-examples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-examples.js","sourceRoot":"","sources":["../../src/schema-validator/validate-examples.ts"],"names":[],"mappings":"AAaA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,yCAAyC;IAClD,WAAW,EAAE;QACX,cAAc,EAAE;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE;gBACV,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;iBACf;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;oBACxB,IAAI,EAAE,QAAQ;iBACf;aACF;YACD,IAAI,EAAE,QAAQ;SACf;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;YAC/B,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA"}
@@ -1,4 +1,4 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  import type { Disposable } from '@furystack/utils';
3
3
  import type { Server } from 'http';
4
4
  import type { IncomingMessage, ServerResponse } from 'http';
@@ -0,0 +1,73 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var ServerManager_1;
8
+ import { Injectable } from '@furystack/inject';
9
+ import { createServer } from 'http';
10
+ import { Lock } from 'semaphore-async-await';
11
+ let ServerManager = ServerManager_1 = class ServerManager {
12
+ constructor() {
13
+ this.servers = new Map();
14
+ this.openedSockets = new Set();
15
+ this.listenLock = new Lock();
16
+ this.getHostUrl = (options) => `http://${options.hostName || ServerManager_1.DEFAULT_HOST}:${options.port}`;
17
+ this.onConnection = (socket) => {
18
+ this.openedSockets.add(socket);
19
+ socket.once('close', () => this.openedSockets.delete(socket));
20
+ };
21
+ }
22
+ async dispose() {
23
+ try {
24
+ await this.listenLock.waitFor(5000);
25
+ }
26
+ finally {
27
+ this.openedSockets.forEach((s) => s.destroy());
28
+ await Promise.allSettled([...this.servers.values()].map((s) => new Promise((resolve, reject) => {
29
+ s.server.close((err) => (err ? reject(err) : resolve()));
30
+ s.server.off('connection', this.onConnection);
31
+ })));
32
+ this.servers.clear();
33
+ this.listenLock.release();
34
+ }
35
+ }
36
+ async getOrCreate(options) {
37
+ const url = this.getHostUrl(options);
38
+ if (!this.servers.has(url)) {
39
+ await this.listenLock.acquire();
40
+ try {
41
+ if (!this.servers.has(url)) {
42
+ await new Promise((resolve, reject) => {
43
+ const apis = [];
44
+ const server = createServer((req, res) => {
45
+ const apiMatch = apis.find((api) => api.shouldExec({ req, res }));
46
+ if (apiMatch) {
47
+ apiMatch.onRequest({ req, res });
48
+ }
49
+ else {
50
+ res.destroy();
51
+ }
52
+ });
53
+ server.on('connection', this.onConnection);
54
+ server.on('listening', () => resolve());
55
+ server.on('error', (err) => reject(err));
56
+ server.listen(options.port, options.hostName);
57
+ this.servers.set(url, { server, apis });
58
+ });
59
+ }
60
+ }
61
+ finally {
62
+ this.listenLock.release();
63
+ }
64
+ }
65
+ return this.servers.get(url);
66
+ }
67
+ };
68
+ ServerManager.DEFAULT_HOST = 'localhost';
69
+ ServerManager = ServerManager_1 = __decorate([
70
+ Injectable({ lifetime: 'singleton' })
71
+ ], ServerManager);
72
+ export { ServerManager };
73
+ //# sourceMappingURL=server-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-manager.js","sourceRoot":"","sources":["../src/server-manager.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ActionResult } from './request-action-implementation';
1
+ import type { ActionResult } from './request-action-implementation.js';
2
2
  export interface SendJsonOptions<T> {
3
3
  statusCode?: number;
4
4
  json: T;