@furystack/rest-service 7.0.12 → 7.0.14

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 (144) hide show
  1. package/esm/actions/error-action.js.map +1 -1
  2. package/esm/actions/error-action.spec.d.ts +2 -0
  3. package/esm/actions/error-action.spec.d.ts.map +1 -0
  4. package/esm/actions/error-action.spec.js +47 -0
  5. package/esm/actions/error-action.spec.js.map +1 -0
  6. package/esm/actions/get-current-user.spec.d.ts +2 -0
  7. package/esm/actions/get-current-user.spec.d.ts.map +1 -0
  8. package/esm/actions/get-current-user.spec.js +19 -0
  9. package/esm/actions/get-current-user.spec.js.map +1 -0
  10. package/esm/actions/is-authenticated.spec.d.ts +2 -0
  11. package/esm/actions/is-authenticated.spec.d.ts.map +1 -0
  12. package/esm/actions/is-authenticated.spec.js +18 -0
  13. package/esm/actions/is-authenticated.spec.js.map +1 -0
  14. package/esm/actions/login-action.spec.d.ts +2 -0
  15. package/esm/actions/login-action.spec.d.ts.map +1 -0
  16. package/esm/actions/login-action.spec.js +34 -0
  17. package/esm/actions/login-action.spec.js.map +1 -0
  18. package/esm/actions/login.js.map +1 -1
  19. package/esm/actions/logout-action.spec.d.ts +2 -0
  20. package/esm/actions/logout-action.spec.d.ts.map +1 -0
  21. package/esm/actions/logout-action.spec.js +22 -0
  22. package/esm/actions/logout-action.spec.js.map +1 -0
  23. package/esm/actions/not-found-action.spec.d.ts +2 -0
  24. package/esm/actions/not-found-action.spec.d.ts.map +1 -0
  25. package/esm/actions/not-found-action.spec.js +16 -0
  26. package/esm/actions/not-found-action.spec.js.map +1 -0
  27. package/esm/add-cors-header.spec.d.ts +2 -0
  28. package/esm/add-cors-header.spec.d.ts.map +1 -0
  29. package/esm/add-cors-header.spec.js +98 -0
  30. package/esm/add-cors-header.spec.js.map +1 -0
  31. package/esm/api-manager.js.map +1 -1
  32. package/esm/authenticate.js.map +1 -1
  33. package/esm/authenticate.spec.d.ts +2 -0
  34. package/esm/authenticate.spec.d.ts.map +1 -0
  35. package/esm/authenticate.spec.js +58 -0
  36. package/esm/authenticate.spec.js.map +1 -0
  37. package/esm/authorize.js.map +1 -1
  38. package/esm/authorize.spec.d.ts +2 -0
  39. package/esm/authorize.spec.d.ts.map +1 -0
  40. package/esm/authorize.spec.js +54 -0
  41. package/esm/authorize.spec.js.map +1 -0
  42. package/esm/endpoint-generators/create-delete-endpoint.spec.d.ts +2 -0
  43. package/esm/endpoint-generators/create-delete-endpoint.spec.d.ts.map +1 -0
  44. package/esm/endpoint-generators/create-delete-endpoint.spec.js +34 -0
  45. package/esm/endpoint-generators/create-delete-endpoint.spec.js.map +1 -0
  46. package/esm/endpoint-generators/create-get-collection-endpoint.spec.d.ts +2 -0
  47. package/esm/endpoint-generators/create-get-collection-endpoint.spec.d.ts.map +1 -0
  48. package/esm/endpoint-generators/create-get-collection-endpoint.spec.js +156 -0
  49. package/esm/endpoint-generators/create-get-collection-endpoint.spec.js.map +1 -0
  50. package/esm/endpoint-generators/create-get-entity-endpoint.js.map +1 -1
  51. package/esm/endpoint-generators/create-get-entity-endpoint.spec.d.ts +2 -0
  52. package/esm/endpoint-generators/create-get-entity-endpoint.spec.d.ts.map +1 -0
  53. package/esm/endpoint-generators/create-get-entity-endpoint.spec.js +74 -0
  54. package/esm/endpoint-generators/create-get-entity-endpoint.spec.js.map +1 -0
  55. package/esm/endpoint-generators/create-patch-endpoint.spec.d.ts +2 -0
  56. package/esm/endpoint-generators/create-patch-endpoint.spec.d.ts.map +1 -0
  57. package/esm/endpoint-generators/create-patch-endpoint.spec.js +37 -0
  58. package/esm/endpoint-generators/create-patch-endpoint.spec.js.map +1 -0
  59. package/esm/endpoint-generators/create-post-endpoint.js.map +1 -1
  60. package/esm/endpoint-generators/create-post-endpoint.spec.d.ts +2 -0
  61. package/esm/endpoint-generators/create-post-endpoint.spec.d.ts.map +1 -0
  62. package/esm/endpoint-generators/create-post-endpoint.spec.js +35 -0
  63. package/esm/endpoint-generators/create-post-endpoint.spec.js.map +1 -0
  64. package/esm/helpers.spec.d.ts +2 -0
  65. package/esm/helpers.spec.d.ts.map +1 -0
  66. package/esm/helpers.spec.js +34 -0
  67. package/esm/helpers.spec.js.map +1 -0
  68. package/esm/http-user-context.d.ts +3 -0
  69. package/esm/http-user-context.d.ts.map +1 -1
  70. package/esm/http-user-context.js.map +1 -1
  71. package/esm/http-user-context.spec.d.ts +3 -0
  72. package/esm/http-user-context.spec.d.ts.map +1 -0
  73. package/esm/http-user-context.spec.js +269 -0
  74. package/esm/http-user-context.spec.js.map +1 -0
  75. package/esm/incoming-message-extensions.spec.d.ts +2 -0
  76. package/esm/incoming-message-extensions.spec.d.ts.map +1 -0
  77. package/esm/incoming-message-extensions.spec.js +38 -0
  78. package/esm/incoming-message-extensions.spec.js.map +1 -0
  79. package/esm/mime-types.spec.d.ts +2 -0
  80. package/esm/mime-types.spec.d.ts.map +1 -0
  81. package/esm/mime-types.spec.js +14 -0
  82. package/esm/mime-types.spec.js.map +1 -0
  83. package/esm/request-action-implementation.d.ts +3 -0
  84. package/esm/request-action-implementation.d.ts.map +1 -1
  85. package/esm/rest-service.integration.spec.d.ts +2 -0
  86. package/esm/rest-service.integration.spec.d.ts.map +1 -0
  87. package/esm/rest-service.integration.spec.js +156 -0
  88. package/esm/rest-service.integration.spec.js.map +1 -0
  89. package/esm/rest.integration.test.d.ts +89 -0
  90. package/esm/rest.integration.test.d.ts.map +1 -0
  91. package/esm/rest.integration.test.js +154 -0
  92. package/esm/rest.integration.test.js.map +1 -0
  93. package/esm/schema-validator/schema-validator.js.map +1 -1
  94. package/esm/schema-validator/schema-validator.test.d.ts +2 -0
  95. package/esm/schema-validator/schema-validator.test.d.ts.map +1 -0
  96. package/esm/schema-validator/schema-validator.test.js +61 -0
  97. package/esm/schema-validator/schema-validator.test.js.map +1 -0
  98. package/esm/server-manager.d.ts +3 -0
  99. package/esm/server-manager.d.ts.map +1 -1
  100. package/esm/server-manager.js.map +1 -1
  101. package/esm/server-response-extensions.js.map +1 -1
  102. package/esm/server-response-extensions.spec.d.ts +2 -0
  103. package/esm/server-response-extensions.spec.d.ts.map +1 -0
  104. package/esm/server-response-extensions.spec.js +52 -0
  105. package/esm/server-response-extensions.spec.js.map +1 -0
  106. package/esm/static-server-manager.d.ts +3 -0
  107. package/esm/static-server-manager.d.ts.map +1 -1
  108. package/esm/static-server-manager.js.map +1 -1
  109. package/esm/static-server-manager.spec.d.ts +2 -0
  110. package/esm/static-server-manager.spec.d.ts.map +1 -0
  111. package/esm/static-server-manager.spec.js +216 -0
  112. package/esm/static-server-manager.spec.js.map +1 -0
  113. package/esm/utils.d.ts +3 -0
  114. package/esm/utils.d.ts.map +1 -1
  115. package/esm/utils.js.map +1 -1
  116. package/esm/validate.integration.spec.d.ts +2 -0
  117. package/esm/validate.integration.spec.d.ts.map +1 -0
  118. package/esm/validate.integration.spec.js +211 -0
  119. package/esm/validate.integration.spec.js.map +1 -0
  120. package/esm/validate.js.map +1 -1
  121. package/package.json +11 -11
  122. package/src/actions/error-action.spec.ts +1 -1
  123. package/src/actions/get-current-user.spec.ts +1 -1
  124. package/src/actions/is-authenticated.spec.ts +1 -1
  125. package/src/actions/login-action.spec.ts +2 -2
  126. package/src/actions/logout-action.spec.ts +2 -2
  127. package/src/actions/not-found-action.spec.ts +1 -1
  128. package/src/add-cors-header.spec.ts +1 -1
  129. package/src/authenticate.spec.ts +3 -3
  130. package/src/authorize.spec.ts +2 -2
  131. package/src/endpoint-generators/create-delete-endpoint.spec.ts +3 -3
  132. package/src/endpoint-generators/create-get-collection-endpoint.spec.ts +3 -3
  133. package/src/endpoint-generators/create-get-entity-endpoint.spec.ts +3 -3
  134. package/src/endpoint-generators/create-patch-endpoint.spec.ts +3 -3
  135. package/src/endpoint-generators/create-post-endpoint.spec.ts +3 -3
  136. package/src/helpers.spec.ts +4 -4
  137. package/src/http-user-context.spec.ts +3 -3
  138. package/src/mime-types.spec.ts +1 -1
  139. package/src/rest-service.integration.spec.ts +4 -4
  140. package/src/rest.integration.test.ts +2 -3
  141. package/src/schema-validator/schema-validator.test.ts +4 -4
  142. package/src/server-response-extensions.spec.ts +1 -1
  143. package/src/static-server-manager.spec.ts +2 -2
  144. package/src/validate.integration.spec.ts +4 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-delete-endpoint.spec.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-delete-endpoint.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,YAAY,CAAC,CAAC,CAAC,CAAA;YACf,MAAM,cAAc,CAA0D;gBAC5E,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE;oBACH,MAAM,EAAE;wBACN,MAAM,EAAE,oBAAoB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;qBACrE;iBACF;aACF,CAAC,CAAA;YACF,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAE7E,MAAM,iBAAiB,GAAG,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1E,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAEjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YACpF,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjC,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YACjC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEpB,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACzE,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-get-collection-endpoint.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-get-collection-endpoint.spec.d.ts","sourceRoot":"","sources":["../../src/endpoint-generators/create-get-collection-endpoint.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,156 @@
1
+ import { usingAsync } from '@furystack/utils';
2
+ import { Injector } from '@furystack/inject';
3
+ import { MockClass, setupContext } from './utils.js';
4
+ import { createGetCollectionEndpoint } from './create-get-collection-endpoint.js';
5
+ import { serializeToQueryString } from '@furystack/rest';
6
+ import { getDataSetFor, getRepository } from '@furystack/repository';
7
+ import { useRestService } from '../helpers.js';
8
+ import { describe, it, expect } from 'vitest';
9
+ const addMockEntities = async (i) => await getRepository(i)
10
+ .getDataSetFor(MockClass, 'id')
11
+ .add(i, { id: 'mock1', value: '4' }, { id: 'mock2', value: '3' }, { id: 'mock3', value: '2' }, { id: 'mock4', value: '1' });
12
+ describe('createGetCollectionEndpoint', () => {
13
+ it('Should return the collection without filter / order', async () => {
14
+ await usingAsync(new Injector(), async (i) => {
15
+ setupContext(i);
16
+ await useRestService({
17
+ injector: i,
18
+ root: '/api',
19
+ port: 1112,
20
+ api: {
21
+ GET: {
22
+ '/entities': createGetCollectionEndpoint({ model: MockClass, primaryKey: 'id' }),
23
+ },
24
+ },
25
+ });
26
+ await addMockEntities(i);
27
+ const count = await getDataSetFor(i, MockClass, 'id').count(i);
28
+ const allEntities = await getDataSetFor(i, MockClass, 'id').find(i, {});
29
+ const response = await fetch('http://127.0.0.1:1112/api/entities', { method: 'GET' });
30
+ expect(response.ok).toBe(true);
31
+ const json = await response.json();
32
+ expect(response.status).toBe(200);
33
+ expect(json.count).toBe(count);
34
+ expect(json.entries).toEqual(allEntities);
35
+ });
36
+ });
37
+ it('Should return entities in order', async () => {
38
+ await usingAsync(new Injector(), async (i) => {
39
+ setupContext(i);
40
+ await useRestService({
41
+ injector: i,
42
+ root: '/api',
43
+ port: 1113,
44
+ api: {
45
+ GET: {
46
+ '/entities': createGetCollectionEndpoint({ model: MockClass, primaryKey: 'id' }),
47
+ },
48
+ },
49
+ });
50
+ await addMockEntities(i);
51
+ const findOptions = { order: { value: 'ASC' } };
52
+ const count = await getDataSetFor(i, MockClass, 'id').count(i, findOptions.filter);
53
+ const orderedEntities = await getDataSetFor(i, MockClass, 'id').find(i, findOptions);
54
+ const response = await fetch(`http://127.0.0.1:1113/api/entities?${serializeToQueryString({ findOptions })}`, {
55
+ method: 'GET',
56
+ });
57
+ expect(response.ok).toBe(true);
58
+ const json = await response.json();
59
+ expect(response.status).toBe(200);
60
+ expect(json.count).toBe(count);
61
+ expect(json.entries).toEqual(orderedEntities);
62
+ });
63
+ });
64
+ it('Should return entities with filtering', async () => {
65
+ await usingAsync(new Injector(), async (i) => {
66
+ setupContext(i);
67
+ await useRestService({
68
+ injector: i,
69
+ root: '/api',
70
+ port: 1113,
71
+ api: {
72
+ GET: {
73
+ '/entities': createGetCollectionEndpoint({ model: MockClass, primaryKey: 'id' }),
74
+ },
75
+ },
76
+ });
77
+ await addMockEntities(i);
78
+ const findOptions = {
79
+ filter: { id: { $ne: 'mock2' } },
80
+ };
81
+ const count = await getDataSetFor(i, MockClass, 'id').count(i, findOptions.filter);
82
+ const filteredEntities = await getDataSetFor(i, MockClass, 'id').find(i, findOptions);
83
+ expect(filteredEntities).not.toContainEqual({ id: 'mock2', value: '3' });
84
+ const response = await fetch(`http://127.0.0.1:1113/api/entities?${serializeToQueryString({ findOptions })}`, {
85
+ method: 'GET',
86
+ });
87
+ expect(response.ok).toBe(true);
88
+ const json = await response.json();
89
+ expect(response.status).toBe(200);
90
+ expect(json.count).toBe(count);
91
+ expect(json.entries).toEqual(filteredEntities);
92
+ });
93
+ });
94
+ it('Should return entities with selecting specific fields', async () => {
95
+ await usingAsync(new Injector(), async (i) => {
96
+ setupContext(i);
97
+ await useRestService({
98
+ injector: i,
99
+ root: '/api',
100
+ port: 1113,
101
+ api: {
102
+ GET: {
103
+ '/entities': createGetCollectionEndpoint({ model: MockClass, primaryKey: 'id' }),
104
+ },
105
+ },
106
+ });
107
+ await addMockEntities(i);
108
+ const findOptions = {
109
+ select: ['id'],
110
+ };
111
+ const count = await getDataSetFor(i, MockClass, 'id').count(i, findOptions.filter);
112
+ const selectedEntities = await getDataSetFor(i, MockClass, 'id').find(i, findOptions);
113
+ selectedEntities.forEach((e) => expect(e.value).toBeUndefined());
114
+ const response = await fetch(`http://127.0.0.1:1113/api/entities?${serializeToQueryString({ findOptions })}`, {
115
+ method: 'GET',
116
+ });
117
+ expect(response.ok).toBe(true);
118
+ const json = await response.json();
119
+ expect(response.status).toBe(200);
120
+ expect(json.count).toBe(count);
121
+ expect(json.entries).toEqual(selectedEntities);
122
+ });
123
+ });
124
+ it('Should return entities with top/skip', async () => {
125
+ await usingAsync(new Injector(), async (i) => {
126
+ setupContext(i);
127
+ await useRestService({
128
+ injector: i,
129
+ root: '/api',
130
+ port: 1113,
131
+ api: {
132
+ GET: {
133
+ '/entities': createGetCollectionEndpoint({ model: MockClass, primaryKey: 'id' }),
134
+ },
135
+ },
136
+ });
137
+ await addMockEntities(i);
138
+ const findOptions = {
139
+ skip: 1,
140
+ top: 2,
141
+ };
142
+ const count = await getDataSetFor(i, MockClass, 'id').count(i, findOptions.filter);
143
+ const topSkipEntities = await getDataSetFor(i, MockClass, 'id').find(i, findOptions);
144
+ expect(topSkipEntities).not.toContainEqual({ id: 'mock1', value: '4' });
145
+ expect(topSkipEntities).not.toContainEqual({ id: 'mock4', value: '1' });
146
+ const response = await fetch(`http://127.0.0.1:1113/api/entities?${serializeToQueryString({ findOptions })}`, {
147
+ method: 'GET',
148
+ });
149
+ expect(response.status).toBe(200);
150
+ const json = await response.json();
151
+ expect(json.count).toBe(count);
152
+ expect(json.entries).toEqual(topSkipEntities);
153
+ });
154
+ });
155
+ });
156
+ //# sourceMappingURL=create-get-collection-endpoint.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-get-collection-endpoint.spec.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-get-collection-endpoint.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-get-entity-endpoint.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-get-entity-endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,uBAAuB,CAAA;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAgD,OAGtF,EAAE,EAAE;IACH,MAAM,QAAQ,GAAqD,KAAK,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChH,MAAM,EAAE,EAAE,EAAE,GAAG,YAAY,EAAE,CAAA;QAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;QAC7B,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;QACxF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;QACrD,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAA;SAChD;QACD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
1
+ {"version":3,"file":"create-get-entity-endpoint.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-get-entity-endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,uBAAuB,CAAA;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAgD,OAGtF,EAAE,EAAE;IACH,MAAM,QAAQ,GAAqD,KAAK,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChH,MAAM,EAAE,EAAE,EAAE,GAAG,YAAY,EAAE,CAAA;QAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;QAC7B,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;QACxF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;QACrD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAA;QACjD,CAAC;QACD,OAAO,UAAU,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-get-entity-endpoint.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-get-entity-endpoint.spec.d.ts","sourceRoot":"","sources":["../../src/endpoint-generators/create-get-entity-endpoint.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,74 @@
1
+ import { usingAsync } from '@furystack/utils';
2
+ import { Injector } from '@furystack/inject';
3
+ import { serializeToQueryString } from '@furystack/rest';
4
+ import { MockClass, setupContext } from './utils.js';
5
+ import { createGetEntityEndpoint } from './create-get-entity-endpoint.js';
6
+ import { getDataSetFor } from '@furystack/repository';
7
+ import { useRestService } from '../helpers.js';
8
+ import { describe, it, expect } from 'vitest';
9
+ describe('createGetEntityEndpoint', () => {
10
+ it('Should return the entity', async () => {
11
+ await usingAsync(new Injector(), async (i) => {
12
+ setupContext(i);
13
+ await useRestService({
14
+ injector: i,
15
+ root: '/api',
16
+ port: 1113,
17
+ api: {
18
+ GET: {
19
+ '/:id': createGetEntityEndpoint({ model: MockClass, primaryKey: 'id' }),
20
+ },
21
+ },
22
+ });
23
+ const mockEntity = { id: 'mock', value: 'mock' };
24
+ await getDataSetFor(i, MockClass, 'id').add(i, mockEntity);
25
+ const response = await fetch('http://127.0.0.1:1113/api/mock', { method: 'GET' });
26
+ expect(response.status).toBe(200);
27
+ const body = await response.json();
28
+ expect(body).toEqual(mockEntity);
29
+ });
30
+ });
31
+ it('Should return the entity with the selected fields', async () => {
32
+ await usingAsync(new Injector(), async (i) => {
33
+ setupContext(i);
34
+ await useRestService({
35
+ injector: i,
36
+ root: '/api',
37
+ port: 1114,
38
+ api: {
39
+ GET: {
40
+ '/:id': createGetEntityEndpoint({ model: MockClass, primaryKey: 'id' }),
41
+ },
42
+ },
43
+ });
44
+ const mockEntity = { id: 'mock', value: 'mock' };
45
+ await getDataSetFor(i, MockClass, 'id').add(i, mockEntity);
46
+ const response = await fetch(`http://127.0.0.1:1114/api/mock?${serializeToQueryString({ select: ['id'] })}`, {
47
+ method: 'GET',
48
+ });
49
+ expect(response.status).toBe(200);
50
+ const body = await response.json();
51
+ expect(body).toEqual({ id: mockEntity.id });
52
+ });
53
+ });
54
+ it('Should return 404 if no entity has been found', async () => {
55
+ await usingAsync(new Injector(), async (i) => {
56
+ setupContext(i);
57
+ await useRestService({
58
+ injector: i,
59
+ root: '/api',
60
+ port: 1115,
61
+ api: {
62
+ GET: {
63
+ '/:id': createGetEntityEndpoint({ model: MockClass, primaryKey: 'id' }),
64
+ },
65
+ },
66
+ });
67
+ const result = await fetch(`http://127.0.0.1:1115/api/mock`, { method: 'GET' });
68
+ expect(result.status).toBe(404);
69
+ const body = await result.json();
70
+ expect(body).toEqual({ message: 'Entity not found' });
71
+ });
72
+ });
73
+ });
74
+ //# sourceMappingURL=create-get-entity-endpoint.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-get-entity-endpoint.spec.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-get-entity-endpoint.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-patch-endpoint.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-patch-endpoint.spec.d.ts","sourceRoot":"","sources":["../../src/endpoint-generators/create-patch-endpoint.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,37 @@
1
+ import { usingAsync } from '@furystack/utils';
2
+ import { Injector } from '@furystack/inject';
3
+ import { createPatchEndpoint } from './create-patch-endpoint.js';
4
+ import { MockClass, setupContext } from './utils.js';
5
+ import { getDataSetFor } from '@furystack/repository';
6
+ import { useRestService } from '../helpers.js';
7
+ import { describe, it, expect } from 'vitest';
8
+ describe('createPatchEndpoint', () => {
9
+ it('Should update the entity and report the success', async () => {
10
+ await usingAsync(new Injector(), async (i) => {
11
+ setupContext(i);
12
+ await useRestService({
13
+ injector: i,
14
+ root: '/api',
15
+ port: 1116,
16
+ api: {
17
+ PATCH: {
18
+ '/:id': createPatchEndpoint({ model: MockClass, primaryKey: 'id' }),
19
+ },
20
+ },
21
+ });
22
+ await getDataSetFor(i, MockClass, 'id').add(i, { id: 'mock', value: 'mock' });
23
+ const countBeforeDelete = await getDataSetFor(i, MockClass, 'id').count(i);
24
+ expect(countBeforeDelete).toBe(1);
25
+ const response = await fetch('http://127.0.0.1:1116/api/mock', {
26
+ method: 'PATCH',
27
+ body: JSON.stringify({ value: 'updated' }),
28
+ });
29
+ expect(response.status).toBe(200);
30
+ const body = await response.json();
31
+ expect(body).toEqual({});
32
+ const updated = await getDataSetFor(i, MockClass, 'id').get(i, 'mock');
33
+ expect(updated?.value).toBe('updated');
34
+ });
35
+ });
36
+ });
37
+ //# sourceMappingURL=create-patch-endpoint.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-patch-endpoint.spec.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-patch-endpoint.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,YAAY,CAAC,CAAC,CAAC,CAAA;YACf,MAAM,cAAc,CAAwD;gBAC1E,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE;oBACH,KAAK,EAAE;wBACL,MAAM,EAAE,mBAAmB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;qBACpE;iBACF;aACF,CAAC,CAAA;YACF,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;YAE7E,MAAM,iBAAiB,GAAG,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1E,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAEjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,EAAE;gBAC7D,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;aAC3C,CAAC,CAAA;YACF,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAClC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACxB,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;YACtE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACxC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-post-endpoint.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-post-endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,uBAAuB,CAAA;AAC9B,OAAO,mCAAmC,CAAA;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAIhC,OAGD,EAAE,EAAE;IACH,MAAM,QAAQ,GAA+D,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3G,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,aAAa,CACnD,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,UAAU,CACnB,CAAA;QAED,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,YAAY,EAAiB,CAAA;QAClE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;QAC/D,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAC/B,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAA;SAChD;QACD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACpC,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
1
+ {"version":3,"file":"create-post-endpoint.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-post-endpoint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,uBAAuB,CAAA;AAC9B,OAAO,mCAAmC,CAAA;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAA;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAIhC,OAGD,EAAE,EAAE;IACH,MAAM,QAAQ,GAA+D,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3G,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,aAAa,CACnD,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,UAAU,CACnB,CAAA;QAED,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,YAAY,EAAiB,CAAA;QAClE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAA;QAC/D,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAA;QACjD,CAAC;QACD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACpC,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-post-endpoint.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-post-endpoint.spec.d.ts","sourceRoot":"","sources":["../../src/endpoint-generators/create-post-endpoint.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import { usingAsync } from '@furystack/utils';
2
+ import { Injector } from '@furystack/inject';
3
+ import { createPostEndpoint } from './create-post-endpoint.js';
4
+ import { MockClass, setupContext } from './utils.js';
5
+ import { useRestService } from '../helpers.js';
6
+ import { getDataSetFor } from '@furystack/repository';
7
+ import { describe, it, expect } from 'vitest';
8
+ describe('createPostEndpoint', () => {
9
+ it('Should create the entity and report the success', async () => {
10
+ await usingAsync(new Injector(), async (i) => {
11
+ setupContext(i);
12
+ await useRestService({
13
+ injector: i,
14
+ root: '/api',
15
+ port: 1117,
16
+ api: {
17
+ POST: {
18
+ '/': createPostEndpoint({ model: MockClass, primaryKey: 'id' }),
19
+ },
20
+ },
21
+ });
22
+ const entityToPost = { id: 'mock', value: 'posted' };
23
+ const response = await fetch('http://127.0.0.1:1117/api', {
24
+ method: 'POST',
25
+ body: JSON.stringify(entityToPost),
26
+ });
27
+ expect(response.status).toBe(201);
28
+ const body = await response.json();
29
+ expect(body).toEqual(entityToPost);
30
+ const posted = await getDataSetFor(i, MockClass, 'id').get(i, entityToPost.id);
31
+ expect(posted?.value).toBe('posted');
32
+ });
33
+ });
34
+ });
35
+ //# sourceMappingURL=create-post-endpoint.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-post-endpoint.spec.js","sourceRoot":"","sources":["../../src/endpoint-generators/create-post-endpoint.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,YAAY,CAAC,CAAC,CAAC,CAAA;YACf,MAAM,cAAc,CAAmD;gBACrE,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE;oBACH,IAAI,EAAE;wBACJ,GAAG,EAAE,kBAAkB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;qBAChE;iBACF;aACF,CAAC,CAAA;YACF,MAAM,YAAY,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;YACpD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,2BAA2B,EAAE;gBACxD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;aACnC,CAAC,CAAA;YACF,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAClC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;YAClC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,CAAA;YAC9E,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACtC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=helpers.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.spec.d.ts","sourceRoot":"","sources":["../src/helpers.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { Injector } from '@furystack/inject';
2
+ import { usingAsync } from '@furystack/utils';
3
+ import { ApiManager } from './api-manager.js';
4
+ import { HttpAuthenticationSettings } from './http-authentication-settings.js';
5
+ import { useHttpAuthentication, useRestService, useStaticFiles } from './helpers.js';
6
+ import { StaticServerManager } from './static-server-manager.js';
7
+ import { describe, it, expect } from 'vitest';
8
+ describe('Injector extensions', () => {
9
+ describe('useHttpAuthentication', () => {
10
+ it('Should set up HTTP Authentication', async () => {
11
+ await usingAsync(new Injector(), async (i) => {
12
+ useHttpAuthentication(i);
13
+ expect(i.cachedSingletons.get(HttpAuthenticationSettings)).toBeDefined();
14
+ });
15
+ });
16
+ });
17
+ describe('useRestService()', () => {
18
+ it('Should set up a REST service', async () => {
19
+ await usingAsync(new Injector(), async (i) => {
20
+ await useRestService({ injector: i, api: {}, root: '/', port: 1234 });
21
+ expect(i.cachedSingletons.get(ApiManager)).toBeDefined();
22
+ });
23
+ });
24
+ });
25
+ describe('useRestService()', () => {
26
+ it('Should set up a REST service', async () => {
27
+ await usingAsync(new Injector(), async (i) => {
28
+ await useStaticFiles({ injector: i, baseUrl: '/', path: '.', port: 1234 });
29
+ expect(i.cachedSingletons.get(StaticServerManager)).toBeDefined();
30
+ });
31
+ });
32
+ });
33
+ });
34
+ //# sourceMappingURL=helpers.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.spec.js","sourceRoot":"","sources":["../src/helpers.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC3C,qBAAqB,CAAC,CAAC,CAAC,CAAA;gBACxB,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAC1E,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;YAC5C,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;gBACrE,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YAC1D,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;YAC5C,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC1E,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YACnE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,3 +1,6 @@
1
+ /// <reference path="server-response-extensions.d.ts" />
2
+ /// <reference path="incoming-message-extensions.d.ts" />
3
+ /// <reference types="node/http.js" />
1
4
  import type { IncomingMessage, ServerResponse } from 'http';
2
5
  import type { User } from '@furystack/core';
3
6
  import { HttpAuthenticationSettings } from './http-authentication-settings.js';
@@ -1 +1 @@
1
- {"version":3,"file":"http-user-context.d.ts","sourceRoot":"","sources":["../src/http-user-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAG3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAIjE;;GAEG;AACH,qBACa,eAAe;IACnB,YAAY,8HAA4D;IAExE,eAAe,sKAA+D;IAErF,OAAO,CAAC,aAAa,CAOpB;IAED,OAAO,CAAC,cAAc,CAOrB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IAEnB;;;OAGG;IACU,eAAe,CAAC,OAAO,EAAE,eAAe;IASrD;;;;;OAKG;IACU,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAUzF;;;;;OAKG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAanD,cAAc,CAAC,OAAO,EAAE,eAAe;IAQ7C,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI;IAkB1D,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBzE;;;;;OAKG;IACU,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc;IAW5E,SACgB,cAAc,EAAG,0BAA0B,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAGjF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAG5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;CACvD"}
1
+ {"version":3,"file":"http-user-context.d.ts","sourceRoot":"","sources":["../src/http-user-context.ts"],"names":[],"mappings":";;;AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAG3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAIjE;;GAEG;AACH,qBACa,eAAe;IACnB,YAAY,8HAA4D;IAExE,eAAe,sKAA+D;IAErF,OAAO,CAAC,aAAa,CAOpB;IAED,OAAO,CAAC,cAAc,CAOrB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IAEnB;;;OAGG;IACU,eAAe,CAAC,OAAO,EAAE,eAAe;IASrD;;;;;OAKG;IACU,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAUzF;;;;;OAKG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAanD,cAAc,CAAC,OAAO,EAAE,eAAe;IAQ7C,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI;IAkB1D,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBzE;;;;;OAKG;IACU,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc;IAW5E,SACgB,cAAc,EAAG,0BAA0B,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAGjF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAG5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;CACvD"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-user-context.js","sourceRoot":"","sources":["../src/http-user-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-user-context.js","sourceRoot":"","sources":["../src/http-user-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Injector } from '@furystack/inject';
2
+ export declare const prepareInjector: (i: Injector) => Promise<void>;
3
+ //# sourceMappingURL=http-user-context.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-user-context.spec.d.ts","sourceRoot":"","sources":["../src/http-user-context.spec.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAQ5C,eAAO,MAAM,eAAe,MAAa,QAAQ,kBAMhD,CAAA"}