@ms-cloudpack/create-express-app 1.0.2 → 1.1.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.
package/CHANGELOG.json CHANGED
@@ -2,7 +2,37 @@
2
2
  "name": "@ms-cloudpack/create-express-app",
3
3
  "entries": [
4
4
  {
5
- "date": "Tue, 15 Nov 2022 08:12:36 GMT",
5
+ "date": "Wed, 23 Nov 2022 08:09:52 GMT",
6
+ "tag": "@ms-cloudpack/create-express-app_v1.1.1",
7
+ "version": "1.1.1",
8
+ "comments": {
9
+ "patch": [
10
+ {
11
+ "author": "dake.3601@gmail.com",
12
+ "package": "@ms-cloudpack/create-express-app",
13
+ "commit": "d24cd9f25c708b1e3c02f5ba705e3610fb3e54c2",
14
+ "comment": "If port range is specified, throw error if none is available."
15
+ }
16
+ ]
17
+ }
18
+ },
19
+ {
20
+ "date": "Tue, 22 Nov 2022 08:10:22 GMT",
21
+ "tag": "@ms-cloudpack/create-express-app_v1.1.0",
22
+ "version": "1.1.0",
23
+ "comments": {
24
+ "minor": [
25
+ {
26
+ "author": "dake.3601@gmail.com",
27
+ "package": "@ms-cloudpack/create-express-app",
28
+ "commit": "96959421cca3058863aee2097e83a2911f6cc460",
29
+ "comment": "Added option to set directory to serve as plain static assets."
30
+ }
31
+ ]
32
+ }
33
+ },
34
+ {
35
+ "date": "Tue, 15 Nov 2022 08:13:12 GMT",
6
36
  "tag": "@ms-cloudpack/create-express-app_v1.0.2",
7
37
  "version": "1.0.2",
8
38
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,28 @@
1
1
  # Change Log - @ms-cloudpack/create-express-app
2
2
 
3
- This log was last generated on Tue, 15 Nov 2022 08:12:36 GMT and should not be manually modified.
3
+ This log was last generated on Wed, 23 Nov 2022 08:09:52 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 1.1.1
8
+
9
+ Wed, 23 Nov 2022 08:09:52 GMT
10
+
11
+ ### Patches
12
+
13
+ - If port range is specified, throw error if none is available. (dake.3601@gmail.com)
14
+
15
+ ## 1.1.0
16
+
17
+ Tue, 22 Nov 2022 08:10:22 GMT
18
+
19
+ ### Minor changes
20
+
21
+ - Added option to set directory to serve as plain static assets. (dake.3601@gmail.com)
22
+
7
23
  ## 1.0.2
8
24
 
9
- Tue, 15 Nov 2022 08:12:36 GMT
25
+ Tue, 15 Nov 2022 08:13:12 GMT
10
26
 
11
27
  ### Patches
12
28
 
@@ -4,9 +4,11 @@ import type { Server } from 'http';
4
4
  import type { HttpsConfig } from './parseHttpsConfig.js';
5
5
  export declare function createExpressApp(options: {
6
6
  portRange?: number | number[];
7
+ requireSpecifiedPort?: boolean;
7
8
  hostname?: string;
8
9
  sslOptions?: HttpsConfig;
9
10
  setupCallback?: (app: Express) => void;
11
+ publicDir?: string;
10
12
  }): Promise<{
11
13
  server: Server;
12
14
  protocol: 'http' | 'https';
@@ -4,16 +4,26 @@ import cors from 'cors';
4
4
  import compression from 'compression';
5
5
  import getPort from 'get-port';
6
6
  export async function createExpressApp(options) {
7
- const { setupCallback, hostname, sslOptions, portRange } = options;
7
+ const { setupCallback, hostname, sslOptions, requireSpecifiedPort, publicDir, portRange: ports } = options;
8
+ const portRange = typeof ports === 'number' ? [ports] : ports;
9
+ if (requireSpecifiedPort && (portRange === undefined || portRange.length === 0)) {
10
+ throw new Error('No port specified');
11
+ }
8
12
  // Get the available port.
9
13
  const port = await getPort({
10
14
  port: portRange,
11
15
  });
16
+ if (requireSpecifiedPort && portRange && !portRange.includes(port)) {
17
+ throw new Error('Specified port not available');
18
+ }
12
19
  const app = express();
13
20
  // Use cors.
14
21
  app.use(cors());
15
22
  // Use compression.
16
23
  app.use(compression());
24
+ if (publicDir !== undefined) {
25
+ app.use(express.static(publicDir));
26
+ }
17
27
  // Call setup callback with the app.
18
28
  setupCallback?.(app);
19
29
  const domain = hostname || 'localhost';
@@ -1 +1 @@
1
- {"version":3,"file":"createExpressApp.js","sourceRoot":"","sources":["../src/createExpressApp.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAgB,MAAM,SAAS,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,WAAW,MAAM,aAAa,CAAC;AACtC,OAAO,OAAO,MAAM,UAAU,CAAC;AAI/B,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAKtC;IAMC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAEnE,0BAA0B;IAC1B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;QACzB,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,YAAY;IACZ,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhB,mBAAmB;IACnB,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAEvB,oCAAoC;IACpC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC;IAErB,MAAM,MAAM,GAAG,QAAQ,IAAI,WAAW,CAAC;IACvC,IAAI,MAAM,GAAG,SAAS,CAAC;IACvB,IAAI,QAAQ,GAAqB,MAAM,CAAC;IAExC,IAAI,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QACtD,0BAA0B;QAC1B,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,QAAQ,GAAG,OAAO,CAAC;KACpB;SAAM;QACL,yBAAyB;QACzB,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;KACnC;IAED,OAAO;QACL,MAAM;QACN,QAAQ;QACR,MAAM;QACN,IAAI;KACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"createExpressApp.js","sourceRoot":"","sources":["../src/createExpressApp.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAgB,MAAM,SAAS,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,WAAW,MAAM,aAAa,CAAC;AACtC,OAAO,OAAO,MAAM,UAAU,CAAC;AAI/B,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAOtC;IAMC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,oBAAoB,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAE3G,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAE9D,IAAI,oBAAoB,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;QAC/E,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;KACtC;IAED,0BAA0B;IAC1B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;QACzB,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IAEH,IAAI,oBAAoB,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QAClE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;KACjD;IAED,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,YAAY;IACZ,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhB,mBAAmB;IACnB,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAEvB,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;KACpC;IAED,oCAAoC;IACpC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC;IAErB,MAAM,MAAM,GAAG,QAAQ,IAAI,WAAW,CAAC;IACvC,IAAI,MAAM,GAAG,SAAS,CAAC;IACvB,IAAI,QAAQ,GAAqB,MAAM,CAAC;IAExC,IAAI,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QACtD,0BAA0B;QAC1B,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,QAAQ,GAAG,OAAO,CAAC;KACpB;SAAM;QACL,yBAAyB;QACzB,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;KACnC;IAED,OAAO;QACL,MAAM;QACN,QAAQ;QACR,MAAM;QACN,IAAI;KACL,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ms-cloudpack/create-express-app",
3
- "version": "1.0.2",
3
+ "version": "1.1.1",
4
4
  "description": "Helper for creating an express app server, abstracting a common plugin setup.",
5
5
  "license": "MIT",
6
6
  "type": "module",