gitlab-radiator 3.4.0 → 3.4.1

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,45 +0,0 @@
1
- import {formatDistance} from 'date-fns'
2
- import type {Stage} from './gitlab-types'
3
-
4
- export function renderTimestamp(stages: Stage[], now: number): string {
5
- const timestamps = getTimestamps(stages)
6
-
7
- if (timestamps.length === 0) {
8
- return 'Pending...'
9
- }
10
-
11
- const finished = timestamps
12
- .map(t => t.finishedAt)
13
- .filter((t): t is number => t !== null)
14
- const inProgress = timestamps.length > finished.length
15
- if (inProgress) {
16
- const [timestamp] = timestamps.sort((a, b) => a.startedAt - b.startedAt)
17
- return renderDistance('Started', timestamp.startedAt, now)
18
- }
19
-
20
- const [latestFinishedAt] = finished.sort((a, b) => b - a)
21
- return renderDistance('Finished', latestFinishedAt, now)
22
- }
23
-
24
- function getTimestamps(stages: Stage[]): {startedAt: number, finishedAt: number | null}[] {
25
- return stages
26
- .flatMap(s => s.jobs)
27
- .map(job => {
28
- const startedAt = job.startedAt ? new Date(job.startedAt).valueOf() : null
29
- const finishedAt = job.finishedAt ? new Date(job.finishedAt).valueOf() : null
30
- return {
31
- startedAt,
32
- finishedAt
33
- }
34
- })
35
- .filter((t): t is {startedAt: number, finishedAt: number | null} => t.startedAt !== null)
36
- }
37
-
38
- function renderDistance(predicate: string, timestamp: number, now: number) {
39
- const distance = formatDate(timestamp, now)
40
- return `${predicate} ${distance} ago`
41
- }
42
-
43
- function formatDate(timestamp: number, now: number) {
44
- return formatDistance(new Date(timestamp), new Date(now))
45
- }
@@ -1,18 +0,0 @@
1
- import {Jobs} from './jobs'
2
- import React from 'react'
3
- import type {Stage} from './gitlab-types'
4
-
5
- export function Stages({stages, maxNonFailedJobsVisible}: {stages: Stage[], maxNonFailedJobsVisible: number}): JSX.Element {
6
- return <ol className="stages">
7
- {stages.map(stage =>
8
- <StageElement stage={stage} maxNonFailedJobsVisible={maxNonFailedJobsVisible} key={stage.name}/>
9
- )}
10
- </ol>
11
- }
12
-
13
- function StageElement({stage, maxNonFailedJobsVisible}: {stage: Stage, maxNonFailedJobsVisible: number}) {
14
- return <li className="stage">
15
- <div className="name">{stage.name}</div>
16
- <Jobs jobs={stage.jobs} maxNonFailedJobsVisible={maxNonFailedJobsVisible}/>
17
- </li>
18
- }
package/src/dev-assets.js DELETED
@@ -1,10 +0,0 @@
1
- import config from '../webpack.dev.js'
2
- import webpack from 'webpack'
3
- import webpackDevMiddleware from 'webpack-dev-middleware'
4
- import webpackHotMiddleware from 'webpack-hot-middleware'
5
-
6
- export function bindDevAssets(app) {
7
- const compiler = webpack(config)
8
- app.use(webpackDevMiddleware(compiler))
9
- app.use(webpackHotMiddleware(compiler))
10
- }
@@ -1,75 +0,0 @@
1
- import * as clientMock from './../../src/gitlab/client'
2
- import {expect} from 'chai'
3
- import {fetchProjects} from './../../src/gitlab/projects'
4
- import sinon from 'sinon'
5
-
6
- describe("projects", () => {
7
- const response = {
8
- data: [
9
- {
10
- path_with_namespace: "group1/pro",
11
- jobs_enabled: true
12
- },
13
- {
14
- path_with_namespace: "group1/pro-other",
15
- jobs_enabled: true
16
- },
17
- {
18
- path_with_namespace: "group2/something",
19
- jobs_enabled: true
20
- },
21
- {
22
- path_with_namespace: "group3/no-ci-pipelines",
23
- jobs_enabled: false
24
- }
25
- ],
26
- headers: {}
27
- }
28
-
29
- before(() => {
30
- sinon.stub(clientMock, 'gitlabRequest').callsFake(() => {
31
- return new Promise((resolve) => {
32
- resolve(response)
33
- })
34
- })
35
- })
36
-
37
- after(() => {
38
- sinon.resetBehavior()
39
- })
40
-
41
- it('should return only included projects', async () => {
42
- const gitlab = {
43
- projects: {
44
- include: '.*/pro.*'
45
- }
46
- }
47
- const projects = await fetchProjects(gitlab)
48
- expect(projects.length).to.equal(2)
49
- expect(projects[0].name).to.equal('group1/pro')
50
- expect(projects[1].name).to.equal('group1/pro-other')
51
- })
52
-
53
- it('should not return excluded projects', async () => {
54
- const gitlab = {
55
- projects: {
56
- exclude: '.*/pro.*'
57
- }
58
- }
59
- const projects = await fetchProjects(gitlab)
60
- expect(projects.length).to.equal(1)
61
- expect(projects[0].name).to.equal('group2/something')
62
- })
63
-
64
- it('should not return excluded and return only included', async () => {
65
- const gitlab = {
66
- projects: {
67
- include: '.*/pro.*',
68
- exclude: '.*/pro-other.*'
69
- }
70
- }
71
- const projects = await fetchProjects(gitlab)
72
- expect(projects.length).to.equal(1)
73
- expect(projects[0].name).to.equal('group1/pro')
74
- })
75
- })
@@ -1,434 +0,0 @@
1
- import {expect} from 'chai'
2
- import {fetchLatestPipelines} from '../src/gitlab/pipelines'
3
- import {fetchProjects} from '../src/gitlab/projects'
4
- import {update} from '../src/gitlab'
5
-
6
- const gitlab = {
7
- url: 'https://gitlab.com',
8
- 'access-token': 'K34Nzm3_JA1rQMML6j5h',
9
- maxNonFailedJobsVisible: 10
10
- }
11
-
12
- describe('Gitlab client', () => {
13
- it('Should find five projects with no filtering ', async () => {
14
- const config = {...gitlab}
15
- const projects = await fetchProjects(config)
16
- expect(projects).to.deep.equal([
17
- {archived: false, default_branch: 'master', group: 'gitlab-radiator-test', id: 39541352, name: 'gitlab-radiator-test/project-with-child-pipeline', nameWithoutNamespace: 'project-with-child-pipeline', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/project-with-child-pipeline'},
18
- {archived: false, default_branch: 'master', group: 'gitlab-radiator-test', id: 5385889, name: 'gitlab-radiator-test/ci-skip-test-project', nameWithoutNamespace: 'ci-skip-test-project', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/ci-skip-test-project'},
19
- {archived: false, default_branch: 'master', group: 'gitlab-radiator-test', id: 5304923, name: 'gitlab-radiator-test/empty-test', nameWithoutNamespace: 'empty-test', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/empty-test'},
20
- {archived: false, default_branch: 'master', group: 'gitlab-radiator-test', id: 5290928, name: 'gitlab-radiator-test/integration-test-project-2', nameWithoutNamespace: 'integration-test-project-2', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2'},
21
- {archived: false, default_branch: 'master', group: 'gitlab-radiator-test', id: 5290865, name: 'gitlab-radiator-test/integration-test-project-1', nameWithoutNamespace: 'integration-test-project-1', tags: ['display-1'], url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1'}
22
- ])
23
- })
24
-
25
- it('Should find one project with inclusive filtering', async () => {
26
- const config = {...gitlab, projects: {include: '.*project-1'}}
27
- const projects = await fetchProjects(config)
28
- expect(projects).to.deep.equal([
29
- {archived: false, default_branch: 'master', id: 5290865, group: 'gitlab-radiator-test', name: 'gitlab-radiator-test/integration-test-project-1', nameWithoutNamespace: 'integration-test-project-1', tags: ['display-1'], url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1'}
30
- ])
31
- })
32
-
33
- it('Should find four projects with exclusive filtering', async () => {
34
- const config = {...gitlab, projects: {exclude: '.*project-1'}}
35
- const projects = await fetchProjects(config)
36
- expect(projects).to.deep.equal([
37
- {archived: false, default_branch: 'master', group: 'gitlab-radiator-test', id: 39541352, name: 'gitlab-radiator-test/project-with-child-pipeline', nameWithoutNamespace: 'project-with-child-pipeline', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/project-with-child-pipeline'},
38
- {archived: false, default_branch: 'master', id: 5385889, group: 'gitlab-radiator-test', name: 'gitlab-radiator-test/ci-skip-test-project', nameWithoutNamespace: 'ci-skip-test-project', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/ci-skip-test-project'},
39
- {archived: false, default_branch: 'master', id: 5304923, group: 'gitlab-radiator-test', name: 'gitlab-radiator-test/empty-test', nameWithoutNamespace: 'empty-test', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/empty-test'},
40
- {archived: false, default_branch: 'master', id: 5290928, group: 'gitlab-radiator-test', name: 'gitlab-radiator-test/integration-test-project-2', nameWithoutNamespace: 'integration-test-project-2', tags: [], url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2'}
41
- ])
42
- })
43
-
44
- it('Should find latest non-skipped pipeline for project', async () => {
45
- const config = {...gitlab}
46
- const pipelines = await fetchLatestPipelines(5385889, config)
47
- expect(pipelines).to.deep.equal(
48
- [{
49
- commit: {
50
- author: 'Heikki Pora',
51
- title: '[ci skip] do nothing'
52
- },
53
- id: 234495591,
54
- ref: 'master',
55
- stages: [{
56
- jobs: [{
57
- finishedAt: '2020-12-25T20:08:30.992Z',
58
- id: 932219322,
59
- name: 'test',
60
- startedAt: '2020-12-25T20:07:50.812Z',
61
- status: 'success',
62
- url: 'https://gitlab.com/gitlab-radiator-test/ci-skip-test-project/-/jobs/932219322'
63
- }],
64
- name: 'test'
65
- }],
66
- status: 'success'
67
- }]
68
- )
69
- })
70
-
71
- it('Should find latest pipelines for project (feature branch + master) with stages and retried jobs merged to one entry', async () => {
72
- const config = {...gitlab}
73
- const pipelines = await fetchLatestPipelines(5290928, config)
74
- expect(pipelines).to.deep.equal(
75
- [{
76
- id: 234613306,
77
- status: 'success',
78
- commit: {
79
- title: 'Fail more',
80
- author: 'Heikki Pora'
81
- },
82
- ref: 'feature/test-branch',
83
- stages: [
84
- {
85
- name: 'test',
86
- jobs: [
87
- {
88
- id: 932599898,
89
- status: 'success',
90
- name: 'fail_randomly_long_name',
91
- startedAt: '2020-12-26T13:59:35.397Z',
92
- finishedAt: '2020-12-26T14:00:11.845Z',
93
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932599898'
94
- }
95
- ]
96
- },
97
- {
98
- name: 'build',
99
- jobs: [
100
- {
101
- id: 932599715,
102
- status: 'success',
103
- name: 'build_my_stuff',
104
- startedAt: '2020-12-26T14:00:12.710Z',
105
- finishedAt: '2020-12-26T14:00:53.946Z',
106
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932599715'
107
- }
108
- ]
109
- }
110
- ]
111
- },
112
- {
113
- id: 234613296,
114
- status: 'failed',
115
- commit: {
116
- author: 'Heikki Pora',
117
- title: 'Fail more'
118
- },
119
- ref: 'master',
120
- stages: [
121
- {
122
- jobs: [
123
- {
124
- finishedAt: '2020-12-26T14:01:11.815Z',
125
- id: 932600811,
126
- name: 'fail_randomly_long_name',
127
- startedAt: '2020-12-26T14:00:39.928Z',
128
- status: 'failed',
129
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932600811'
130
- }
131
- ],
132
- name: 'test'
133
- },
134
- {
135
- jobs: [
136
- {
137
- finishedAt: '2020-12-26T13:59:28.050Z',
138
- id: 932599688,
139
- name: 'build_my_stuff',
140
- startedAt: '2020-12-26T13:58:54.325Z',
141
- status: 'success',
142
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932599688'
143
- }
144
- ],
145
- name: 'build'
146
- }
147
- ]
148
- }]
149
- )
150
- })
151
-
152
- it('Should find two projects with two pipelines for the first and one for the second (and exclude projects without pipelines)', async() => {
153
- const config = {gitlabs: [{...gitlab, projects: {exclude: '.*-with-child-pipeline'}}]}
154
- const projects = await update(config)
155
- expect(projects).to.deep.equal(
156
- [
157
- {
158
- archived: false,
159
- default_branch: 'master',
160
- group: 'gitlab-radiator-test',
161
- id: 5385889,
162
- maxNonFailedJobsVisible: 10,
163
- name: 'gitlab-radiator-test/ci-skip-test-project',
164
- nameWithoutNamespace: 'ci-skip-test-project',
165
- tags: [],
166
- url: 'https://gitlab.com/gitlab-radiator-test/ci-skip-test-project',
167
- pipelines: [
168
- {
169
- id: 234495591,
170
- status: 'success',
171
- commit: {
172
- author: 'Heikki Pora',
173
- title: '[ci skip] do nothing'
174
- },
175
- ref: 'master',
176
- stages: [{
177
- jobs: [{
178
- finishedAt: '2020-12-25T20:08:30.992Z',
179
- id: 932219322,
180
- name: 'test',
181
- startedAt: '2020-12-25T20:07:50.812Z',
182
- status: 'success',
183
- url: 'https://gitlab.com/gitlab-radiator-test/ci-skip-test-project/-/jobs/932219322'
184
- }],
185
- name: 'test'
186
- }]
187
- }
188
- ],
189
- status: 'success'
190
- },
191
- {
192
- archived: false,
193
- default_branch: 'master',
194
- group: 'gitlab-radiator-test',
195
- id: 5290928,
196
- maxNonFailedJobsVisible: 10,
197
- name: 'gitlab-radiator-test/integration-test-project-2',
198
- nameWithoutNamespace: 'integration-test-project-2',
199
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2',
200
- tags: [],
201
- pipelines: [
202
- {
203
- id: 234613306,
204
- status: 'success',
205
- commit: {
206
- title: 'Fail more',
207
- author: 'Heikki Pora'
208
- },
209
- ref: 'feature/test-branch',
210
- stages: [
211
- {
212
- name: 'test',
213
- jobs: [
214
- {
215
- id: 932599898,
216
- status: 'success',
217
- name: 'fail_randomly_long_name',
218
- startedAt: '2020-12-26T13:59:35.397Z',
219
- finishedAt: '2020-12-26T14:00:11.845Z',
220
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932599898'
221
- }
222
- ]
223
- },
224
- {
225
- name: 'build',
226
- jobs: [
227
- {
228
- id: 932599715,
229
- status: 'success',
230
- name: 'build_my_stuff',
231
- startedAt: '2020-12-26T14:00:12.710Z',
232
- finishedAt: '2020-12-26T14:00:53.946Z',
233
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932599715'
234
- }
235
- ]
236
- }
237
- ]
238
- },
239
- {
240
- id: 234613296,
241
- ref: 'master',
242
- status: 'failed',
243
- commit: {
244
- title: 'Fail more',
245
- author: 'Heikki Pora'
246
- },
247
- stages: [
248
- {
249
- name: 'test',
250
- jobs: [
251
- {
252
- id: 932600811,
253
- status: 'failed',
254
- name: 'fail_randomly_long_name',
255
- startedAt: '2020-12-26T14:00:39.928Z',
256
- finishedAt: '2020-12-26T14:01:11.815Z',
257
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932600811'
258
- }
259
- ]
260
- },
261
- {
262
- name: 'build',
263
- jobs: [
264
- {
265
- id: 932599688,
266
- status: 'success',
267
- name: 'build_my_stuff',
268
- startedAt: '2020-12-26T13:58:54.325Z',
269
- finishedAt: '2020-12-26T13:59:28.050Z',
270
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-2/-/jobs/932599688'
271
- }
272
- ]
273
- }
274
- ]
275
- }
276
- ],
277
- status: 'failed'
278
- },
279
- {
280
- archived: false,
281
- default_branch: 'master',
282
- group: 'gitlab-radiator-test',
283
- id: 5290865,
284
- maxNonFailedJobsVisible: 10,
285
- name: 'gitlab-radiator-test/integration-test-project-1',
286
- nameWithoutNamespace: 'integration-test-project-1',
287
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1',
288
- tags: ['display-1'],
289
- pipelines: [
290
- {
291
- id: 234493901,
292
- ref: 'master',
293
- status: 'success',
294
- commit: {
295
- title: 'Fail manual step',
296
- author: 'Heikki Pora'
297
- },
298
- stages: [
299
- {
300
- name: 'test',
301
- jobs: [
302
- {
303
- id: 932213321,
304
- status: 'success',
305
- name: 'api-test',
306
- startedAt: '2020-12-25T20:02:42.733Z',
307
- finishedAt: '2020-12-25T20:03:36.383Z',
308
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213321'
309
- },
310
- {
311
- id: 932213322,
312
- status: 'success',
313
- name: 'browser-test',
314
- startedAt: '2020-12-25T20:02:43.020Z',
315
- finishedAt: '2020-12-25T20:03:28.386Z',
316
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213322'
317
- },
318
- {
319
- id: 932213319,
320
- status: 'success',
321
- name: 'eslint',
322
- startedAt: '2020-12-25T20:02:42.444Z',
323
- finishedAt: '2020-12-25T20:03:34.931Z',
324
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213319'
325
- },
326
- {
327
- id: 932213320,
328
- status: 'success',
329
- name: 'verify',
330
- startedAt: '2020-12-25T20:02:42.663Z',
331
- finishedAt: '2020-12-25T20:03:35.364Z',
332
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213320'
333
- }
334
- ]
335
- },
336
- {
337
- name: 'build',
338
- jobs: [
339
- {
340
- id: 932213323,
341
- status: 'success',
342
- name: 'package-my-stuff',
343
- startedAt: '2020-12-25T20:03:37.107Z',
344
- finishedAt: '2020-12-25T20:04:22.618Z',
345
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213323'
346
- }
347
- ]
348
- },
349
- {
350
- name: 'deploy',
351
- jobs: [
352
- {
353
- id: 932213324,
354
- status: 'success',
355
- name: 'deploy-my-awesome-stuff',
356
- startedAt: '2020-12-25T20:04:23.450Z',
357
- finishedAt: '2020-12-25T20:05:14.167Z',
358
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213324'
359
- }
360
- ]
361
- },
362
- {
363
- name: 'finnish',
364
- jobs: [
365
- {
366
- id: 932213325,
367
- status: 'manual',
368
- name: 'manual_step-1',
369
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213325'
370
- },
371
- {
372
- id: 932213326,
373
- status: 'manual',
374
- name: 'manual_step-2',
375
- url: 'https://gitlab.com/gitlab-radiator-test/integration-test-project-1/-/jobs/932213326'
376
- }
377
- ]
378
- }
379
- ]
380
- }
381
- ],
382
- status: 'success'
383
- }]
384
- )
385
- })
386
-
387
- it('Should include triggered child pipeline for project', async () => {
388
- const config = {...gitlab}
389
- const pipelines = await fetchLatestPipelines(39541352, config)
390
- expect(pipelines).to.deep.equal(
391
- [{
392
- commit: {
393
- author: 'Heikki Pora',
394
- title: 'Initial commit'
395
- },
396
- id: 644417453,
397
- ref: 'master',
398
- stages: [{
399
- jobs: [{
400
- finishedAt: '2022-09-19T16:59:07.394Z',
401
- id: 3050180428,
402
- name: 'start-job',
403
- startedAt: '2022-09-19T16:58:54.170Z',
404
- status: 'success',
405
- url: 'https://gitlab.com/gitlab-radiator-test/project-with-child-pipeline/-/jobs/3050180428'
406
- }],
407
- name: 'start'
408
- }, {
409
- jobs: [{
410
- finishedAt: '2022-09-19T16:59:23.868Z',
411
- id: 3050181208,
412
- name: 'build',
413
- startedAt: '2022-09-19T16:59:08.204Z',
414
- status: 'success',
415
- url: 'https://gitlab.com/gitlab-radiator-test/project-with-child-pipeline/-/jobs/3050181208'
416
- }],
417
- name: 'run-child:build'
418
- },{
419
- jobs: [{
420
- finishedAt: '2022-09-19T16:59:36.918Z',
421
- id: 3050181210,
422
- name: 'test',
423
- startedAt: '2022-09-19T16:59:24.138Z',
424
- status: 'success',
425
- url: 'https://gitlab.com/gitlab-radiator-test/project-with-child-pipeline/-/jobs/3050181210'
426
- }],
427
- name: 'run-child:test'
428
- }],
429
- status: 'success'
430
- }]
431
- )
432
- })
433
-
434
- })
package/tsconfig.json DELETED
@@ -1,28 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "outDir": "./dist/",
4
- "target": "es5",
5
- "lib": [
6
- "dom",
7
- "dom.iterable",
8
- "esnext"
9
- ],
10
- "allowJs": true,
11
- "skipLibCheck": true,
12
- "esModuleInterop": true,
13
- "allowSyntheticDefaultImports": true,
14
- "strict": true,
15
- "forceConsistentCasingInFileNames": true,
16
- "module": "esnext",
17
- "moduleResolution": "node",
18
- "isolatedModules": true,
19
- "resolveJsonModule": true,
20
- "jsx": "react",
21
- "sourceMap": true,
22
- "declaration": false,
23
- "noUnusedLocals": true,
24
- "noUnusedParameters": true,
25
- "incremental": true,
26
- "noFallthroughCasesInSwitch": true
27
- }
28
- }
package/webpack.common.js DELETED
@@ -1,25 +0,0 @@
1
- const path = require('path')
2
- const webpack = require('webpack')
3
-
4
- module.exports = {
5
- module: {
6
- rules: [
7
- {
8
- test: /\.(js|jsx|ts|tsx)$/,
9
- use: 'ts-loader',
10
- exclude: /node_modules/,
11
- },
12
- {
13
- test: /\.(ttf|html)$/i,
14
- type: 'asset/resource'
15
- }
16
- ]
17
- },
18
- output: {
19
- filename: 'client.js',
20
- path: path.resolve(__dirname, 'build/public')
21
- },
22
- resolve: {
23
- extensions: ['.js', '.ts', '.tsx']
24
- }
25
- }
package/webpack.dev.js DELETED
@@ -1,13 +0,0 @@
1
- const common = require('./webpack.common.js')
2
- const {merge} = require('webpack-merge')
3
- const webpack = require('webpack')
4
-
5
- module.exports = merge(common, {
6
- mode: 'development',
7
- entry: [
8
- './src/client/index.tsx',
9
- 'webpack-hot-middleware/client'
10
- ],
11
- plugins: [new webpack.HotModuleReplacementPlugin()],
12
- devtool: 'inline-source-map'
13
- })
package/webpack.prod.js DELETED
@@ -1,9 +0,0 @@
1
- const common = require('./webpack.common.js')
2
- const {merge} = require('webpack-merge')
3
-
4
- module.exports = merge(common, {
5
- mode: 'production',
6
- entry: [
7
- './src/client/index.tsx'
8
- ]
9
- })