@elliemae/pui-cli 8.55.7-alpha.2 → 8.56.0

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 (53) hide show
  1. package/README.md +1 -13
  2. package/dist/cjs/server/cert.js +3 -2
  3. package/dist/cjs/server/certs/ca-cert.pem +27 -0
  4. package/dist/cjs/server/certs/ca-key.pem +30 -0
  5. package/dist/cjs/server/certs/cert-bundle.pem +54 -0
  6. package/dist/cjs/server/certs/cert.pem +27 -0
  7. package/dist/cjs/server/certs/generate-certs.sh +77 -0
  8. package/dist/cjs/server/certs/key.pem +28 -0
  9. package/dist/cjs/server/certs/openssl.cnf +32 -0
  10. package/dist/cjs/server/certs/server.cnf +31 -0
  11. package/dist/cjs/testing/jest.config.cjs +0 -1
  12. package/dist/cjs/testing/setup-tests.js +0 -2
  13. package/dist/cjs/webpack/webpack.base.babel.js +1 -2
  14. package/dist/cjs/webpack/webpack.lib.base.babel.js +1 -2
  15. package/dist/cjs/webpack/webpack.storybook.js +0 -1
  16. package/dist/esm/server/cert.js +3 -2
  17. package/dist/esm/server/certs/ca-cert.pem +27 -0
  18. package/dist/esm/server/certs/ca-key.pem +30 -0
  19. package/dist/esm/server/certs/cert-bundle.pem +54 -0
  20. package/dist/esm/server/certs/cert.pem +27 -0
  21. package/dist/esm/server/certs/generate-certs.sh +77 -0
  22. package/dist/esm/server/certs/key.pem +28 -0
  23. package/dist/esm/server/certs/openssl.cnf +32 -0
  24. package/dist/esm/server/certs/server.cnf +31 -0
  25. package/dist/esm/testing/jest.config.cjs +0 -1
  26. package/dist/esm/testing/setup-tests.js +0 -2
  27. package/dist/esm/webpack/webpack.base.babel.js +1 -2
  28. package/dist/esm/webpack/webpack.lib.base.babel.js +1 -2
  29. package/dist/esm/webpack/webpack.storybook.js +0 -1
  30. package/dist/types/lib/server/cert.d.ts +2 -2
  31. package/dist/types/lib/testing/jest.config.d.cts +0 -1
  32. package/dist/types/lib/testing/jest.node.config.d.cts +0 -1
  33. package/dist/types/tsconfig.tsbuildinfo +1 -1
  34. package/package.json +13 -13
  35. package/dist/cjs/server/certs/cert.crt +0 -25
  36. package/dist/cjs/server/certs/cert.csr +0 -18
  37. package/dist/cjs/server/certs/cert.ext +0 -7
  38. package/dist/cjs/server/certs/cert.key +0 -30
  39. package/dist/cjs/server/certs/cert.pfx +0 -0
  40. package/dist/cjs/server/certs/rootCA.crt +0 -24
  41. package/dist/cjs/server/certs/rootCA.key +0 -30
  42. package/dist/cjs/server/certs/rootCA.srl +0 -1
  43. package/dist/cjs/testing/mocks/pui-logrocket.js +0 -45
  44. package/dist/esm/server/certs/cert.crt +0 -25
  45. package/dist/esm/server/certs/cert.csr +0 -18
  46. package/dist/esm/server/certs/cert.ext +0 -7
  47. package/dist/esm/server/certs/cert.key +0 -30
  48. package/dist/esm/server/certs/cert.pfx +0 -0
  49. package/dist/esm/server/certs/rootCA.crt +0 -24
  50. package/dist/esm/server/certs/rootCA.key +0 -30
  51. package/dist/esm/server/certs/rootCA.srl +0 -1
  52. package/dist/esm/testing/mocks/pui-logrocket.js +0 -25
  53. package/dist/types/lib/testing/mocks/pui-logrocket.d.ts +0 -12
package/README.md CHANGED
@@ -4,19 +4,7 @@
4
4
 
5
5
  [SonarQube Report](https://sonarqube.jenkins.elliemae.cloud/overview?id=elliemae.pui.cli-master)
6
6
 
7
- ## Features
8
-
9
- - Supports typescript
10
- - Builds react application / library using webpack
11
- - Builds storybook application in libraries
12
- - Provides code quality check configurations such as
13
- - eslint configurations
14
- - prettier configuration
15
- - commit lint configuration
16
- - style lint configuration
17
- - Provides common unit/integration test configuration
18
- - Runs react application using webpack dev server and express
19
- - Runs mocked application apis using express server
7
+ [Documentation Portal](https://docs.pui.mortgagetech.q1.ice.com/cli)
20
8
 
21
9
  ## Migration Guide
22
10
 
@@ -39,7 +39,8 @@ const getCertOptions = () => {
39
39
  const __filename = (0, import_url.fileURLToPath)(import_meta.url);
40
40
  const __dirname = import_path.default.dirname(__filename);
41
41
  return {
42
- pfx: import_fs.default.readFileSync(import_path.default.join(__dirname, "./certs/cert.pfx")),
43
- passphrase: "uiplatform"
42
+ key: import_fs.default.readFileSync(import_path.default.join(__dirname, "./certs/key.pem")),
43
+ cert: import_fs.default.readFileSync(import_path.default.join(__dirname, "./certs/cert-bundle.pem"))
44
+ // Use bundle for full chain
44
45
  };
45
46
  };
@@ -0,0 +1,27 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEhTCCA22gAwIBAgIUfp9DHyT1Qs8eBB3/qRnr5yHEGxYwDQYJKoZIhvcNAQEL
3
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
4
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
5
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
6
+ MTEyMDFaFw0zMDEyMTYwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
7
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
8
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
9
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsU6B6ZcEc
10
+ u5sndixFLQg2z3hHtefJ2sUgQrAuiEjrtn0qoVZNFYHle6iaw564RCkd2J/UEX8N
11
+ rBo+BTxG6jQPH4pToDQlN4n/+koWyEYEJrf13+kCeac6tOMN/bilslXXP2nKCYmA
12
+ sLhA8zZwWGCTy9j+qcsRgRKZafJ7KOGVmnYQJ2i7j2k3gmtta4CeMxE1GFl7dt0g
13
+ 1CK3GBAN2j603VkJvYUwMgqwAiFkuWWh+FTHhRTvcK/+bwpraErz82qkhUmqk4vL
14
+ sIZnitqhkApeschBMTf9T16Nw/U0ZjP8jbWl8T/yu0G7KbiichL2tBhmf4xUIKMI
15
+ 74NFskVcBdcPAgMBAAGjgfQwgfEwgZ8GA1UdEQSBlzCBlIIJbG9jYWxob3N0ggsq
16
+ LmxvY2FsaG9zdIIJMTI3LjAuMC4xggx2aW5vdGh2ay5jb22CDioudmlub3Rodmsu
17
+ Y29tghF2aW5vdGhrdW1hcnZrLmNvbYITKi52aW5vdGhrdW1hcnZrLmNvbYIRYmV0
18
+ YS52aW5vdGh2ay5jb22HBH8AAAGHEAAAAAAAAAAAAAAAAAAAAAEwDAYDVR0TBAUw
19
+ AwEB/zALBgNVHQ8EBAMCAqQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYE
20
+ FH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqGSIb3DQEBCwUAA4IBAQBXPfP06miv
21
+ FOtmi1C8mkW8GsbgExmStFwYcrNTB/C9f7nvt45P+8PDIEHxLZIl7OO3bT7RG1Wq
22
+ XWkUGHLUUTkMT34PbvH2K2YWxWTJTp4uFUu6wCOipYRcBHLtOSdm2oJ9jE3prKCQ
23
+ p9S3GmGKsk4HorhDZLLT6+SWWhKzllM4xDwEe9lFtult9u/WnXaJgOMsjLzbFgfh
24
+ NSqR3ZAJa58UAbsIDIdTOsJel5mKEg6uoH3M6N01J9gT/4jcaWnu5QklyWgWgqiu
25
+ y29w020cxYFiILvdxQduThCfEnUJpJj6jAjWUHUzQi3ogTYaUkKt6+s/M+yLq2mI
26
+ wCE3UNfcBGd2
27
+ -----END CERTIFICATE-----
@@ -0,0 +1,30 @@
1
+ -----BEGIN ENCRYPTED PRIVATE KEY-----
2
+ MIIFJDBWBgkqhkiG9w0BBQ0wSTAxBgkqhkiG9w0BBQwwJAQQlntv4N4D+VAGlR/x
3
+ qGPvYgICCAAwDAYIKoZIhvcNAgkFADAUBggqhkiG9w0DBwQIURz06Cr51dEEggTI
4
+ 0fiUL280RznEYghCv9k++6CrriIeV+Rb3YrCIhI+UP5QdQKoNvwHlZH2cXyXLQpk
5
+ 7dYEafs86IsvfM57CIMiSLqqVCvMbFxB+lqE7p0GtvrEqihW1DtCiMISx7VdW1mY
6
+ Cz7NyqrsQZBot/AVIL04SuuDcoWU/fwN+fFBDzUL47kIYEfYh5Bgb4usiYaTCaPy
7
+ tcWKiYuQSOzU7dwOX8hOvv2OBkjb4sQ/6Jmctdhv5ufg9UFyZEsIhjsUVp20/s6+
8
+ NT0mGOpevNTrqQeGJCrVX9CvAaNkx0HjS2BQUqrmw4bB094mAaAssPBukmVOTssI
9
+ Q0RanbKY0gaZLmJ52OAd/nv43JwPHlrEgeP3V+vL50Pf9aapDe+hSKtSSUXQC5QS
10
+ QSTBS9DFU0984VwE18NYWtV41R5rVhZpPCkTkAxBZS6UU7LhgDB5DT379tytOSdX
11
+ yhno8FImgCLMCEOU4MHI2+5G6xRvz61zb35ZwQKkyvWHwIcBZT518aifTf+3JRkD
12
+ 5Fjj0SWfqosS8aK2917a+IYVjAVsf2Qw1Dsswv4gBuJaNTtkYxcmwI/WDLoZygAz
13
+ ZndXAQ2f95znPX147OSs96M9w4hBuI1hwN8JQxKml+kNEPqoNvY2gsAXE8IXTfgM
14
+ EtHVY7933MXV/9rCWgfkBbt64YPUHLy9DDOADjZcxVVtSOSJFnUE9RjnbChxTVar
15
+ pixcTr/rbPHi5K1CW7STQA2/QOIFGkPGbPmGo+QNNJv3L79UeSgShHYwTlZKH/hY
16
+ poTF209w7NDKlDXtX1AcQPsPyqsqQe7iPGXKqgAYjTLdRLZvUaYmtSz9Hs9Jd1tl
17
+ uRg/EmqKRhH7J8G8IKgA1dtktBwUnLWskgSW/EoV7zBhk/E+SaXt/hx3lHFaYWI9
18
+ 9ux1RALbwNnJjpzIvjg9WeKhjfg1wmRHiHCpItlqv9jTqu1MdT9wJpJHrJL30AoY
19
+ JCav176b8XFTTU9kVAz8ZO7O/xGsEWoevjk+KdfziKHn6Su7ngDFJvmM0NBLQcxT
20
+ O/fEvVmXs59mtq/Ixr3NEHjdsTC9dHSDlYVmlAu+sqARpF4XToKe0psowUidto6a
21
+ qbtbdqNE8d63C5CQm1bF1eE8d3oa3mVnjAd5JBHajax3vryD9Xu4jVtw5PUE2nUO
22
+ zrYMv7CffFvVtoxMKQ6xTdBZbbUszeS8GCRj3/BiZ1OXfKV3wIwzXuE+TViW4Fol
23
+ XsmRJlQim1geXSQ9IOV6rC9/J11xWuaRKEhX57MiR8rqD83HU343YyKGyuI8dzoH
24
+ 3b4DceT5KfKApHD205/5TZkT18p8ebvkcEuFnm8kq/Js9RcHJgHQtyEJ5IL8n9Mi
25
+ a3dr+rTOhQXW9xikGWfFkwb6yXf5l8+IwgmgXy07Yp4LgtnWn6Mx+K1MOttOs1rG
26
+ a9DaB4vnWubTFVJZ+avCa/M03tcf6qxtuWpY/4hGtxYbWYvrdfQt1IyZNP/8+33N
27
+ xH2Zipci/XX4/BegdoXVXncQsbiLrZ41Mjtj03HdK0eG5MCNMU/eBUQpBd2Y7eoS
28
+ WcxzzNvhILWA+4LkdhqKi/d5y7GDClixceyJ/PgEFfOYfDSvpDFfocA1kYGDV/Yi
29
+ EfzOwNe0QUzDBQv9FJuENs5nP4P/Ky+/
30
+ -----END ENCRYPTED PRIVATE KEY-----
@@ -0,0 +1,54 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEmjCCA4KgAwIBAgIUbJBO6DJyTZCHdgB3fnEnfZoq9wAwDQYJKoZIhvcNAQEL
3
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
4
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
5
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
6
+ MTEyMDFaFw0yODAzMjEwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
7
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
8
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
9
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCMpV2fj0PC
10
+ aGDTT/uSKpfrI64F6OnpoabPLI6hiKt2mX6efcHXR7YSwTr4EQyquO8lyvVSKYDI
11
+ 0iRClvw1UycvNViKgzT1QUSIlu3VWevaPCMSCHxQvLS4XNyhZwyP2CeShXT69ZcA
12
+ w1hIIUjtHS9L5mUSUE8lAXzPhryLWIQF7z5Hm+6NitFPIOAVHhWRlQ5F6ggf4P9i
13
+ dAguuShQgKIX7Iws4ohLkax8cE22mKhNZMCnXfOZnrnpN0MmZJJoWUtegxstviic
14
+ NjNYTW9pMsKpTu01RFu3CmUsKMAtXRIQH5MOEXcWP8YGy4Uv8BaI+g3JyhyeFSvm
15
+ IHQD0XuX14D1AgMBAAGjggEIMIIBBDCBnwYDVR0RBIGXMIGUgglsb2NhbGhvc3SC
16
+ CyoubG9jYWxob3N0ggkxMjcuMC4wLjGCDHZpbm90aHZrLmNvbYIOKi52aW5vdGh2
17
+ ay5jb22CEXZpbm90aGt1bWFydmsuY29tghMqLnZpbm90aGt1bWFydmsuY29tghFi
18
+ ZXRhLnZpbm90aHZrLmNvbYcEfwAAAYcQAAAAAAAAAAAAAAAAAAAAATALBgNVHQ8E
19
+ BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYEFBCiC1ydkt6a7pO4
20
+ pcpekwfff69CMB8GA1UdIwQYMBaAFH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqG
21
+ SIb3DQEBCwUAA4IBAQA2c1u+kI/xM8J0Jw6DIV24Yp9aazRdd2qSqfg4D/wS3U0f
22
+ r0hqb4PZS3/iUtC+OffswB/kbq3f7aP96W/R6GoeXdqNhwB31LaHB7E3g4Zo60km
23
+ ETf1k3GACuq+VXnBQruZJ3HMSDvZjuAskOkEs2mKJIP1VoXjdIOrsHXaNyFUoGkz
24
+ SFvz1wUK+EYWCaP2ASGB45ZP5z4taOMccE9AvzBP0jAmipEYmzulQSDtQemIHmop
25
+ Kk4oK/dH+ZD6P2xAqfyDcLXvNIflv49Dv2pBKA2bgTz7dGGJM/1/F3q5Hh31DZgg
26
+ klTy262oCm9v1cOkpeK0zN78Y5XFEhdboKU+JkOo
27
+ -----END CERTIFICATE-----
28
+ -----BEGIN CERTIFICATE-----
29
+ MIIEhTCCA22gAwIBAgIUfp9DHyT1Qs8eBB3/qRnr5yHEGxYwDQYJKoZIhvcNAQEL
30
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
31
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
32
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
33
+ MTEyMDFaFw0zMDEyMTYwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
34
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
35
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
36
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsU6B6ZcEc
37
+ u5sndixFLQg2z3hHtefJ2sUgQrAuiEjrtn0qoVZNFYHle6iaw564RCkd2J/UEX8N
38
+ rBo+BTxG6jQPH4pToDQlN4n/+koWyEYEJrf13+kCeac6tOMN/bilslXXP2nKCYmA
39
+ sLhA8zZwWGCTy9j+qcsRgRKZafJ7KOGVmnYQJ2i7j2k3gmtta4CeMxE1GFl7dt0g
40
+ 1CK3GBAN2j603VkJvYUwMgqwAiFkuWWh+FTHhRTvcK/+bwpraErz82qkhUmqk4vL
41
+ sIZnitqhkApeschBMTf9T16Nw/U0ZjP8jbWl8T/yu0G7KbiichL2tBhmf4xUIKMI
42
+ 74NFskVcBdcPAgMBAAGjgfQwgfEwgZ8GA1UdEQSBlzCBlIIJbG9jYWxob3N0ggsq
43
+ LmxvY2FsaG9zdIIJMTI3LjAuMC4xggx2aW5vdGh2ay5jb22CDioudmlub3Rodmsu
44
+ Y29tghF2aW5vdGhrdW1hcnZrLmNvbYITKi52aW5vdGhrdW1hcnZrLmNvbYIRYmV0
45
+ YS52aW5vdGh2ay5jb22HBH8AAAGHEAAAAAAAAAAAAAAAAAAAAAEwDAYDVR0TBAUw
46
+ AwEB/zALBgNVHQ8EBAMCAqQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYE
47
+ FH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqGSIb3DQEBCwUAA4IBAQBXPfP06miv
48
+ FOtmi1C8mkW8GsbgExmStFwYcrNTB/C9f7nvt45P+8PDIEHxLZIl7OO3bT7RG1Wq
49
+ XWkUGHLUUTkMT34PbvH2K2YWxWTJTp4uFUu6wCOipYRcBHLtOSdm2oJ9jE3prKCQ
50
+ p9S3GmGKsk4HorhDZLLT6+SWWhKzllM4xDwEe9lFtult9u/WnXaJgOMsjLzbFgfh
51
+ NSqR3ZAJa58UAbsIDIdTOsJel5mKEg6uoH3M6N01J9gT/4jcaWnu5QklyWgWgqiu
52
+ y29w020cxYFiILvdxQduThCfEnUJpJj6jAjWUHUzQi3ogTYaUkKt6+s/M+yLq2mI
53
+ wCE3UNfcBGd2
54
+ -----END CERTIFICATE-----
@@ -0,0 +1,27 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEmjCCA4KgAwIBAgIUbJBO6DJyTZCHdgB3fnEnfZoq9wAwDQYJKoZIhvcNAQEL
3
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
4
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
5
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
6
+ MTEyMDFaFw0yODAzMjEwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
7
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
8
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
9
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCMpV2fj0PC
10
+ aGDTT/uSKpfrI64F6OnpoabPLI6hiKt2mX6efcHXR7YSwTr4EQyquO8lyvVSKYDI
11
+ 0iRClvw1UycvNViKgzT1QUSIlu3VWevaPCMSCHxQvLS4XNyhZwyP2CeShXT69ZcA
12
+ w1hIIUjtHS9L5mUSUE8lAXzPhryLWIQF7z5Hm+6NitFPIOAVHhWRlQ5F6ggf4P9i
13
+ dAguuShQgKIX7Iws4ohLkax8cE22mKhNZMCnXfOZnrnpN0MmZJJoWUtegxstviic
14
+ NjNYTW9pMsKpTu01RFu3CmUsKMAtXRIQH5MOEXcWP8YGy4Uv8BaI+g3JyhyeFSvm
15
+ IHQD0XuX14D1AgMBAAGjggEIMIIBBDCBnwYDVR0RBIGXMIGUgglsb2NhbGhvc3SC
16
+ CyoubG9jYWxob3N0ggkxMjcuMC4wLjGCDHZpbm90aHZrLmNvbYIOKi52aW5vdGh2
17
+ ay5jb22CEXZpbm90aGt1bWFydmsuY29tghMqLnZpbm90aGt1bWFydmsuY29tghFi
18
+ ZXRhLnZpbm90aHZrLmNvbYcEfwAAAYcQAAAAAAAAAAAAAAAAAAAAATALBgNVHQ8E
19
+ BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYEFBCiC1ydkt6a7pO4
20
+ pcpekwfff69CMB8GA1UdIwQYMBaAFH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqG
21
+ SIb3DQEBCwUAA4IBAQA2c1u+kI/xM8J0Jw6DIV24Yp9aazRdd2qSqfg4D/wS3U0f
22
+ r0hqb4PZS3/iUtC+OffswB/kbq3f7aP96W/R6GoeXdqNhwB31LaHB7E3g4Zo60km
23
+ ETf1k3GACuq+VXnBQruZJ3HMSDvZjuAskOkEs2mKJIP1VoXjdIOrsHXaNyFUoGkz
24
+ SFvz1wUK+EYWCaP2ASGB45ZP5z4taOMccE9AvzBP0jAmipEYmzulQSDtQemIHmop
25
+ Kk4oK/dH+ZD6P2xAqfyDcLXvNIflv49Dv2pBKA2bgTz7dGGJM/1/F3q5Hh31DZgg
26
+ klTy262oCm9v1cOkpeK0zN78Y5XFEhdboKU+JkOo
27
+ -----END CERTIFICATE-----
@@ -0,0 +1,77 @@
1
+ #!/bin/bash
2
+
3
+ # Script to generate self-signed CA and server certificates for local development
4
+ # This creates a trusted CA that can be added to your system keychain
5
+
6
+ echo "🔐 Generating SSL Certificates for Local Development"
7
+ echo "=================================================="
8
+
9
+ # Set variables
10
+ SSL_DIR="$(dirname "$0")"
11
+ PASSPHRASE="uiplatform"
12
+
13
+ # Colors for output
14
+ GREEN='\033[0;32m'
15
+ BLUE='\033[0;34m'
16
+ NC='\033[0m' # No Color
17
+
18
+ # Step 1: Generate CA private key
19
+ echo -e "\n${BLUE}Step 1: Generating CA private key...${NC}"
20
+ openssl genrsa -des3 -out "$SSL_DIR/ca-key.pem" -passout pass:$PASSPHRASE 2048
21
+
22
+ # Step 2: Generate CA certificate
23
+ echo -e "\n${BLUE}Step 2: Generating CA certificate...${NC}"
24
+ openssl req -x509 -new -nodes \
25
+ -key "$SSL_DIR/ca-key.pem" \
26
+ -passin pass:$PASSPHRASE \
27
+ -sha256 \
28
+ -days 1825 \
29
+ -out "$SSL_DIR/ca-cert.pem" \
30
+ -config "$SSL_DIR/openssl.cnf"
31
+
32
+ # Step 3: Generate server private key (without passphrase for easier use)
33
+ echo -e "\n${BLUE}Step 3: Generating server private key...${NC}"
34
+ openssl genrsa -out "$SSL_DIR/key.pem" 2048
35
+
36
+ # Step 4: Generate Certificate Signing Request (CSR)
37
+ echo -e "\n${BLUE}Step 4: Generating Certificate Signing Request...${NC}"
38
+ openssl req -new \
39
+ -key "$SSL_DIR/key.pem" \
40
+ -out "$SSL_DIR/server.csr" \
41
+ -config "$SSL_DIR/server.cnf"
42
+
43
+ # Step 5: Sign the server certificate with our CA
44
+ echo -e "\n${BLUE}Step 5: Signing server certificate with CA...${NC}"
45
+ openssl x509 -req \
46
+ -in "$SSL_DIR/server.csr" \
47
+ -CA "$SSL_DIR/ca-cert.pem" \
48
+ -CAkey "$SSL_DIR/ca-key.pem" \
49
+ -passin pass:$PASSPHRASE \
50
+ -CAcreateserial \
51
+ -out "$SSL_DIR/cert.pem" \
52
+ -days 825 \
53
+ -sha256 \
54
+ -extfile "$SSL_DIR/server.cnf" \
55
+ -extensions v3_req
56
+
57
+ # Clean up CSR file
58
+ rm "$SSL_DIR/server.csr"
59
+
60
+ # Step 6: Create certificate bundle (server cert + CA cert)
61
+ echo -e "\n${BLUE}Step 6: Creating certificate bundle...${NC}"
62
+ cat "$SSL_DIR/cert.pem" "$SSL_DIR/ca-cert.pem" > "$SSL_DIR/cert-bundle.pem"
63
+
64
+ echo -e "\n${GREEN}✅ Certificate generation complete!${NC}"
65
+ echo ""
66
+ echo "Generated files:"
67
+ echo " • ca-cert.pem - Root CA certificate (add this to system trust store)"
68
+ echo " • ca-key.pem - CA private key (keep secure)"
69
+ echo " • cert.pem - Server certificate"
70
+ echo " • cert-bundle.pem - Server cert + CA cert (use this with http-server)"
71
+ echo " • key.pem - Server private key"
72
+ echo ""
73
+ echo "Next steps:"
74
+ echo " 1. Trust the CA certificate (see TRUST-CERT.md for instructions)"
75
+ echo " 2. Run: npm start"
76
+ echo " 3. Visit: https://localhost"
77
+ echo ""
@@ -0,0 +1,28 @@
1
+ -----BEGIN PRIVATE KEY-----
2
+ MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCMpV2fj0PCaGDT
3
+ T/uSKpfrI64F6OnpoabPLI6hiKt2mX6efcHXR7YSwTr4EQyquO8lyvVSKYDI0iRC
4
+ lvw1UycvNViKgzT1QUSIlu3VWevaPCMSCHxQvLS4XNyhZwyP2CeShXT69ZcAw1hI
5
+ IUjtHS9L5mUSUE8lAXzPhryLWIQF7z5Hm+6NitFPIOAVHhWRlQ5F6ggf4P9idAgu
6
+ uShQgKIX7Iws4ohLkax8cE22mKhNZMCnXfOZnrnpN0MmZJJoWUtegxstviicNjNY
7
+ TW9pMsKpTu01RFu3CmUsKMAtXRIQH5MOEXcWP8YGy4Uv8BaI+g3JyhyeFSvmIHQD
8
+ 0XuX14D1AgMBAAECggEAKqYGgtjtoikGm21YitUxphL2tUIQlFD5hT8srR0FaXxY
9
+ IfVeb0qGkp9Xo1uALNDRa/NkepqtO7hFWI/yQLVLX4xcofvxdiFph8XErvqKg23S
10
+ 8Kf0EoN2haVbHfJio8fXEB45/9OzC38w6QZ217gO3IQrx+bkaQNPdpqT1+lqd2XG
11
+ tigaRQQwboExGWZoXn1TXShC1VpqgCjGjWAAk6m9WlZis5bpabs+tXJfKczEbt7S
12
+ 87NscOgbyiKTvjqDdgCjpFlliMqjTnK7LJ4DeZT0C+pY3rocFbS1bbkkcLF+1OXX
13
+ sPRDIIeFs9c/bSis6V41Je8z+YuTFJ/O3KRRi97zDQKBgQC/qY3v8OWjOBl4COdd
14
+ ic3x2lPs92qsB698fRHDMFCXmct6xZvFNkjIPvxEviOGDpnzXLMYoIRAZuAGz5kv
15
+ HEHYXgo7t+XveOY9VldNnrq+9vWIDEQ5X1ZibuR2lHHC0mBEHIwDHCTAX8/5XHsO
16
+ G6yNLK+IPzuczlWdUhrgfp188wKBgQC727wwjZfn8Ir/xllmTz/7mqX9TZJLO0tB
17
+ HoleQExDyjmvQd9mAPzHvJHf0uhy2fM9fEHrHBVTah5GIbfZpgfxscolSkayPRad
18
+ thkeJoraOA6lFCUoq4B+oYMSPxHH3H5w4HDNbk3MlMtM5/NnB8RRRXBL1ho6/DAl
19
+ 0kAaj77kdwKBgQCX5SVzCmTEBTrSEaRjUkpgKVqoC7GDoxelvm0sVwcYDq/fneqE
20
+ 0i++W4SManA21y2VXFsn4lbNv3o+i5poZqmcc3MCvwzAy/0UkW/hOTHhFFGkv6v2
21
+ GCObIS14+M5ry1S1xjYEZPKPb5+gjXWMycvnmomGni59aF0bsC1Sy6W+lwKBgCzq
22
+ z0Z0tJuaokGh9YJG9K9+PK4iPBaM6ON7H7FPgmy7D6vd/kJvfgFsDx0LWtULU+Oh
23
+ sEk8/8RgHTj7mvAJiOC7d/AOoHTBsoSnI75XzN98g9PoyzG8QA8HI0Xbmq7FA96N
24
+ a6tS8ns2IJ4U39gEvWYJSl53pPHxlrmUWgt/z07lAoGAZRQTcmkbqgAJPxuEouHJ
25
+ qHRk0U0rWoLAEMnihR+iZCXBWkb347bnJnmKk6SotHr0dUlOsVE6Ps6TUHgLDwv+
26
+ TVLw1PKwffRJQnBfn+2bBMZjju5A3L3/Kn0kVgUVwuoY+orOBP+b9/cKPNfHpjYo
27
+ e6EVu9hZFflVwaUDlRggaTY=
28
+ -----END PRIVATE KEY-----
@@ -0,0 +1,32 @@
1
+ [req]
2
+ default_bits = 2048
3
+ prompt = no
4
+ default_md = sha256
5
+ distinguished_name = dn
6
+ x509_extensions = v3_ca
7
+
8
+ [dn]
9
+ C = US
10
+ ST = California
11
+ L = San Francisco
12
+ O = Development
13
+ OU = Local Development
14
+ CN = localhost
15
+
16
+ [v3_ca]
17
+ subjectAltName = @alt_names
18
+ basicConstraints = CA:TRUE
19
+ keyUsage = digitalSignature, keyEncipherment, keyCertSign
20
+ extendedKeyUsage = serverAuth
21
+
22
+ [alt_names]
23
+ DNS.1 = localhost
24
+ DNS.2 = *.localhost
25
+ DNS.3 = 127.0.0.1
26
+ DNS.4 = vinothvk.com
27
+ DNS.5 = *.vinothvk.com
28
+ DNS.6 = vinothkumarvk.com
29
+ DNS.7 = *.vinothkumarvk.com
30
+ DNS.8 = beta.vinothvk.com
31
+ IP.1 = 127.0.0.1
32
+ IP.2 = ::1
@@ -0,0 +1,31 @@
1
+ [req]
2
+ default_bits = 2048
3
+ prompt = no
4
+ default_md = sha256
5
+ distinguished_name = dn
6
+ req_extensions = v3_req
7
+
8
+ [dn]
9
+ C = US
10
+ ST = California
11
+ L = San Francisco
12
+ O = Development
13
+ OU = Local Development
14
+ CN = localhost
15
+
16
+ [v3_req]
17
+ subjectAltName = @alt_names
18
+ keyUsage = digitalSignature, keyEncipherment
19
+ extendedKeyUsage = serverAuth
20
+
21
+ [alt_names]
22
+ DNS.1 = localhost
23
+ DNS.2 = *.localhost
24
+ DNS.3 = 127.0.0.1
25
+ DNS.4 = vinothvk.com
26
+ DNS.5 = *.vinothvk.com
27
+ DNS.6 = vinothkumarvk.com
28
+ DNS.7 = *.vinothkumarvk.com
29
+ DNS.8 = beta.vinothvk.com
30
+ IP.1 = 127.0.0.1
31
+ IP.2 = ::1
@@ -70,7 +70,6 @@ const jestConfig = {
70
70
  '@elliemae/pui-user-monitoring': getMockFilePath('pui-user-monitoring.js'),
71
71
  '@elliemae/pui-app-loader': getMockFilePath('pui-app-loader.js'),
72
72
  '@elliemae/pui-diagnostics': getMockFilePath('pui-diagnostics.js'),
73
- '@elliemae/pui-logrocket': getMockFilePath('pui-logrocket.js'),
74
73
  'react-spring/web': getNodeModulesPath('react-spring/web.cjs.js'),
75
74
  'react-spring/renderprops': getNodeModulesPath(
76
75
  'react-spring/renderprops.cjs.js',
@@ -29,7 +29,6 @@ var import_resize_observer_polyfill = __toESM(require("resize-observer-polyfill"
29
29
  var import_matchMedia = require("./mocks/matchMedia.js");
30
30
  var import_worker = require("./mocks/worker.js");
31
31
  var import_pui_diagnostics = require("./mocks/pui-diagnostics.js");
32
- var import_pui_logrocket = require("./mocks/pui-logrocket.js");
33
32
  Object.defineProperty(globalThis, "crypto", {
34
33
  value: import_node_crypto.webcrypto
35
34
  });
@@ -71,7 +70,6 @@ addRootElement("root");
71
70
  window.ResizeObserver = import_resize_observer_polyfill.default;
72
71
  window.emui = {
73
72
  logger: (0, import_pui_diagnostics.logger)(),
74
- logRocket: import_pui_logrocket.logRocket,
75
73
  _BASE_PATH: new URL(document.baseURI).pathname
76
74
  };
77
75
  let showCorejsWarn = false;
@@ -314,8 +314,7 @@ const baseConfig = (options) => ({
314
314
  externals: {
315
315
  "@elliemae/pui-user-monitoring": "emuiUserMonitoring",
316
316
  "@elliemae/pui-app-loader": "emuiAppLoader",
317
- "@elliemae/pui-diagnostics": "emuiDiagnostics",
318
- "@elliemae/pui-logrocket": "emuiLogrocket"
317
+ "@elliemae/pui-diagnostics": "emuiDiagnostics"
319
318
  },
320
319
  devtool: options.devtool || "eval-source-map",
321
320
  performance: options.performance || {},
@@ -213,8 +213,7 @@ const baseConfig = (options) => ({
213
213
  externals: {
214
214
  "@elliemae/pui-user-monitoring": "emuiUserMonitoring",
215
215
  "@elliemae/pui-app-loader": "emuiAppLoader",
216
- "@elliemae/pui-diagnostics": "emuiDiagnostics",
217
- "@elliemae/pui-logrocket": "emuiLogrocket"
216
+ "@elliemae/pui-diagnostics": "emuiDiagnostics"
218
217
  },
219
218
  devtool: options.devtool || "eval-source-map",
220
219
  performance: options.performance || {},
@@ -116,7 +116,6 @@ const webpackFinal = (config, { configType }) => {
116
116
  config.externals["@elliemae/pui-user-monitoring"] = "emuiUserMonitoring";
117
117
  config.externals["@elliemae/pui-app-loader"] = "emuiAppLoader";
118
118
  config.externals["@elliemae/pui-diagnostics"] = "emuiDiagnostics";
119
- config.externals["@elliemae/pui-logrocket"] = "emuiLogrocket";
120
119
  }
121
120
  return config;
122
121
  };
@@ -5,8 +5,9 @@ const getCertOptions = () => {
5
5
  const __filename = fileURLToPath(import.meta.url);
6
6
  const __dirname = path.dirname(__filename);
7
7
  return {
8
- pfx: fs.readFileSync(path.join(__dirname, "./certs/cert.pfx")),
9
- passphrase: "uiplatform"
8
+ key: fs.readFileSync(path.join(__dirname, "./certs/key.pem")),
9
+ cert: fs.readFileSync(path.join(__dirname, "./certs/cert-bundle.pem"))
10
+ // Use bundle for full chain
10
11
  };
11
12
  };
12
13
  export {
@@ -0,0 +1,27 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEhTCCA22gAwIBAgIUfp9DHyT1Qs8eBB3/qRnr5yHEGxYwDQYJKoZIhvcNAQEL
3
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
4
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
5
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
6
+ MTEyMDFaFw0zMDEyMTYwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
7
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
8
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
9
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsU6B6ZcEc
10
+ u5sndixFLQg2z3hHtefJ2sUgQrAuiEjrtn0qoVZNFYHle6iaw564RCkd2J/UEX8N
11
+ rBo+BTxG6jQPH4pToDQlN4n/+koWyEYEJrf13+kCeac6tOMN/bilslXXP2nKCYmA
12
+ sLhA8zZwWGCTy9j+qcsRgRKZafJ7KOGVmnYQJ2i7j2k3gmtta4CeMxE1GFl7dt0g
13
+ 1CK3GBAN2j603VkJvYUwMgqwAiFkuWWh+FTHhRTvcK/+bwpraErz82qkhUmqk4vL
14
+ sIZnitqhkApeschBMTf9T16Nw/U0ZjP8jbWl8T/yu0G7KbiichL2tBhmf4xUIKMI
15
+ 74NFskVcBdcPAgMBAAGjgfQwgfEwgZ8GA1UdEQSBlzCBlIIJbG9jYWxob3N0ggsq
16
+ LmxvY2FsaG9zdIIJMTI3LjAuMC4xggx2aW5vdGh2ay5jb22CDioudmlub3Rodmsu
17
+ Y29tghF2aW5vdGhrdW1hcnZrLmNvbYITKi52aW5vdGhrdW1hcnZrLmNvbYIRYmV0
18
+ YS52aW5vdGh2ay5jb22HBH8AAAGHEAAAAAAAAAAAAAAAAAAAAAEwDAYDVR0TBAUw
19
+ AwEB/zALBgNVHQ8EBAMCAqQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYE
20
+ FH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqGSIb3DQEBCwUAA4IBAQBXPfP06miv
21
+ FOtmi1C8mkW8GsbgExmStFwYcrNTB/C9f7nvt45P+8PDIEHxLZIl7OO3bT7RG1Wq
22
+ XWkUGHLUUTkMT34PbvH2K2YWxWTJTp4uFUu6wCOipYRcBHLtOSdm2oJ9jE3prKCQ
23
+ p9S3GmGKsk4HorhDZLLT6+SWWhKzllM4xDwEe9lFtult9u/WnXaJgOMsjLzbFgfh
24
+ NSqR3ZAJa58UAbsIDIdTOsJel5mKEg6uoH3M6N01J9gT/4jcaWnu5QklyWgWgqiu
25
+ y29w020cxYFiILvdxQduThCfEnUJpJj6jAjWUHUzQi3ogTYaUkKt6+s/M+yLq2mI
26
+ wCE3UNfcBGd2
27
+ -----END CERTIFICATE-----
@@ -0,0 +1,30 @@
1
+ -----BEGIN ENCRYPTED PRIVATE KEY-----
2
+ MIIFJDBWBgkqhkiG9w0BBQ0wSTAxBgkqhkiG9w0BBQwwJAQQlntv4N4D+VAGlR/x
3
+ qGPvYgICCAAwDAYIKoZIhvcNAgkFADAUBggqhkiG9w0DBwQIURz06Cr51dEEggTI
4
+ 0fiUL280RznEYghCv9k++6CrriIeV+Rb3YrCIhI+UP5QdQKoNvwHlZH2cXyXLQpk
5
+ 7dYEafs86IsvfM57CIMiSLqqVCvMbFxB+lqE7p0GtvrEqihW1DtCiMISx7VdW1mY
6
+ Cz7NyqrsQZBot/AVIL04SuuDcoWU/fwN+fFBDzUL47kIYEfYh5Bgb4usiYaTCaPy
7
+ tcWKiYuQSOzU7dwOX8hOvv2OBkjb4sQ/6Jmctdhv5ufg9UFyZEsIhjsUVp20/s6+
8
+ NT0mGOpevNTrqQeGJCrVX9CvAaNkx0HjS2BQUqrmw4bB094mAaAssPBukmVOTssI
9
+ Q0RanbKY0gaZLmJ52OAd/nv43JwPHlrEgeP3V+vL50Pf9aapDe+hSKtSSUXQC5QS
10
+ QSTBS9DFU0984VwE18NYWtV41R5rVhZpPCkTkAxBZS6UU7LhgDB5DT379tytOSdX
11
+ yhno8FImgCLMCEOU4MHI2+5G6xRvz61zb35ZwQKkyvWHwIcBZT518aifTf+3JRkD
12
+ 5Fjj0SWfqosS8aK2917a+IYVjAVsf2Qw1Dsswv4gBuJaNTtkYxcmwI/WDLoZygAz
13
+ ZndXAQ2f95znPX147OSs96M9w4hBuI1hwN8JQxKml+kNEPqoNvY2gsAXE8IXTfgM
14
+ EtHVY7933MXV/9rCWgfkBbt64YPUHLy9DDOADjZcxVVtSOSJFnUE9RjnbChxTVar
15
+ pixcTr/rbPHi5K1CW7STQA2/QOIFGkPGbPmGo+QNNJv3L79UeSgShHYwTlZKH/hY
16
+ poTF209w7NDKlDXtX1AcQPsPyqsqQe7iPGXKqgAYjTLdRLZvUaYmtSz9Hs9Jd1tl
17
+ uRg/EmqKRhH7J8G8IKgA1dtktBwUnLWskgSW/EoV7zBhk/E+SaXt/hx3lHFaYWI9
18
+ 9ux1RALbwNnJjpzIvjg9WeKhjfg1wmRHiHCpItlqv9jTqu1MdT9wJpJHrJL30AoY
19
+ JCav176b8XFTTU9kVAz8ZO7O/xGsEWoevjk+KdfziKHn6Su7ngDFJvmM0NBLQcxT
20
+ O/fEvVmXs59mtq/Ixr3NEHjdsTC9dHSDlYVmlAu+sqARpF4XToKe0psowUidto6a
21
+ qbtbdqNE8d63C5CQm1bF1eE8d3oa3mVnjAd5JBHajax3vryD9Xu4jVtw5PUE2nUO
22
+ zrYMv7CffFvVtoxMKQ6xTdBZbbUszeS8GCRj3/BiZ1OXfKV3wIwzXuE+TViW4Fol
23
+ XsmRJlQim1geXSQ9IOV6rC9/J11xWuaRKEhX57MiR8rqD83HU343YyKGyuI8dzoH
24
+ 3b4DceT5KfKApHD205/5TZkT18p8ebvkcEuFnm8kq/Js9RcHJgHQtyEJ5IL8n9Mi
25
+ a3dr+rTOhQXW9xikGWfFkwb6yXf5l8+IwgmgXy07Yp4LgtnWn6Mx+K1MOttOs1rG
26
+ a9DaB4vnWubTFVJZ+avCa/M03tcf6qxtuWpY/4hGtxYbWYvrdfQt1IyZNP/8+33N
27
+ xH2Zipci/XX4/BegdoXVXncQsbiLrZ41Mjtj03HdK0eG5MCNMU/eBUQpBd2Y7eoS
28
+ WcxzzNvhILWA+4LkdhqKi/d5y7GDClixceyJ/PgEFfOYfDSvpDFfocA1kYGDV/Yi
29
+ EfzOwNe0QUzDBQv9FJuENs5nP4P/Ky+/
30
+ -----END ENCRYPTED PRIVATE KEY-----
@@ -0,0 +1,54 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEmjCCA4KgAwIBAgIUbJBO6DJyTZCHdgB3fnEnfZoq9wAwDQYJKoZIhvcNAQEL
3
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
4
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
5
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
6
+ MTEyMDFaFw0yODAzMjEwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
7
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
8
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
9
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCMpV2fj0PC
10
+ aGDTT/uSKpfrI64F6OnpoabPLI6hiKt2mX6efcHXR7YSwTr4EQyquO8lyvVSKYDI
11
+ 0iRClvw1UycvNViKgzT1QUSIlu3VWevaPCMSCHxQvLS4XNyhZwyP2CeShXT69ZcA
12
+ w1hIIUjtHS9L5mUSUE8lAXzPhryLWIQF7z5Hm+6NitFPIOAVHhWRlQ5F6ggf4P9i
13
+ dAguuShQgKIX7Iws4ohLkax8cE22mKhNZMCnXfOZnrnpN0MmZJJoWUtegxstviic
14
+ NjNYTW9pMsKpTu01RFu3CmUsKMAtXRIQH5MOEXcWP8YGy4Uv8BaI+g3JyhyeFSvm
15
+ IHQD0XuX14D1AgMBAAGjggEIMIIBBDCBnwYDVR0RBIGXMIGUgglsb2NhbGhvc3SC
16
+ CyoubG9jYWxob3N0ggkxMjcuMC4wLjGCDHZpbm90aHZrLmNvbYIOKi52aW5vdGh2
17
+ ay5jb22CEXZpbm90aGt1bWFydmsuY29tghMqLnZpbm90aGt1bWFydmsuY29tghFi
18
+ ZXRhLnZpbm90aHZrLmNvbYcEfwAAAYcQAAAAAAAAAAAAAAAAAAAAATALBgNVHQ8E
19
+ BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYEFBCiC1ydkt6a7pO4
20
+ pcpekwfff69CMB8GA1UdIwQYMBaAFH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqG
21
+ SIb3DQEBCwUAA4IBAQA2c1u+kI/xM8J0Jw6DIV24Yp9aazRdd2qSqfg4D/wS3U0f
22
+ r0hqb4PZS3/iUtC+OffswB/kbq3f7aP96W/R6GoeXdqNhwB31LaHB7E3g4Zo60km
23
+ ETf1k3GACuq+VXnBQruZJ3HMSDvZjuAskOkEs2mKJIP1VoXjdIOrsHXaNyFUoGkz
24
+ SFvz1wUK+EYWCaP2ASGB45ZP5z4taOMccE9AvzBP0jAmipEYmzulQSDtQemIHmop
25
+ Kk4oK/dH+ZD6P2xAqfyDcLXvNIflv49Dv2pBKA2bgTz7dGGJM/1/F3q5Hh31DZgg
26
+ klTy262oCm9v1cOkpeK0zN78Y5XFEhdboKU+JkOo
27
+ -----END CERTIFICATE-----
28
+ -----BEGIN CERTIFICATE-----
29
+ MIIEhTCCA22gAwIBAgIUfp9DHyT1Qs8eBB3/qRnr5yHEGxYwDQYJKoZIhvcNAQEL
30
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
31
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
32
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
33
+ MTEyMDFaFw0zMDEyMTYwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
34
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
35
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
36
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsU6B6ZcEc
37
+ u5sndixFLQg2z3hHtefJ2sUgQrAuiEjrtn0qoVZNFYHle6iaw564RCkd2J/UEX8N
38
+ rBo+BTxG6jQPH4pToDQlN4n/+koWyEYEJrf13+kCeac6tOMN/bilslXXP2nKCYmA
39
+ sLhA8zZwWGCTy9j+qcsRgRKZafJ7KOGVmnYQJ2i7j2k3gmtta4CeMxE1GFl7dt0g
40
+ 1CK3GBAN2j603VkJvYUwMgqwAiFkuWWh+FTHhRTvcK/+bwpraErz82qkhUmqk4vL
41
+ sIZnitqhkApeschBMTf9T16Nw/U0ZjP8jbWl8T/yu0G7KbiichL2tBhmf4xUIKMI
42
+ 74NFskVcBdcPAgMBAAGjgfQwgfEwgZ8GA1UdEQSBlzCBlIIJbG9jYWxob3N0ggsq
43
+ LmxvY2FsaG9zdIIJMTI3LjAuMC4xggx2aW5vdGh2ay5jb22CDioudmlub3Rodmsu
44
+ Y29tghF2aW5vdGhrdW1hcnZrLmNvbYITKi52aW5vdGhrdW1hcnZrLmNvbYIRYmV0
45
+ YS52aW5vdGh2ay5jb22HBH8AAAGHEAAAAAAAAAAAAAAAAAAAAAEwDAYDVR0TBAUw
46
+ AwEB/zALBgNVHQ8EBAMCAqQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYE
47
+ FH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqGSIb3DQEBCwUAA4IBAQBXPfP06miv
48
+ FOtmi1C8mkW8GsbgExmStFwYcrNTB/C9f7nvt45P+8PDIEHxLZIl7OO3bT7RG1Wq
49
+ XWkUGHLUUTkMT34PbvH2K2YWxWTJTp4uFUu6wCOipYRcBHLtOSdm2oJ9jE3prKCQ
50
+ p9S3GmGKsk4HorhDZLLT6+SWWhKzllM4xDwEe9lFtult9u/WnXaJgOMsjLzbFgfh
51
+ NSqR3ZAJa58UAbsIDIdTOsJel5mKEg6uoH3M6N01J9gT/4jcaWnu5QklyWgWgqiu
52
+ y29w020cxYFiILvdxQduThCfEnUJpJj6jAjWUHUzQi3ogTYaUkKt6+s/M+yLq2mI
53
+ wCE3UNfcBGd2
54
+ -----END CERTIFICATE-----
@@ -0,0 +1,27 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEmjCCA4KgAwIBAgIUbJBO6DJyTZCHdgB3fnEnfZoq9wAwDQYJKoZIhvcNAQEL
3
+ BQAwgYAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
4
+ DA1TYW4gRnJhbmNpc2NvMRQwEgYDVQQKDAtEZXZlbG9wbWVudDEaMBgGA1UECwwR
5
+ TG9jYWwgRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yNTEyMTcw
6
+ MTEyMDFaFw0yODAzMjEwMTEyMDFaMIGAMQswCQYDVQQGEwJVUzETMBEGA1UECAwK
7
+ Q2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEUMBIGA1UECgwLRGV2
8
+ ZWxvcG1lbnQxGjAYBgNVBAsMEUxvY2FsIERldmVsb3BtZW50MRIwEAYDVQQDDAls
9
+ b2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCMpV2fj0PC
10
+ aGDTT/uSKpfrI64F6OnpoabPLI6hiKt2mX6efcHXR7YSwTr4EQyquO8lyvVSKYDI
11
+ 0iRClvw1UycvNViKgzT1QUSIlu3VWevaPCMSCHxQvLS4XNyhZwyP2CeShXT69ZcA
12
+ w1hIIUjtHS9L5mUSUE8lAXzPhryLWIQF7z5Hm+6NitFPIOAVHhWRlQ5F6ggf4P9i
13
+ dAguuShQgKIX7Iws4ohLkax8cE22mKhNZMCnXfOZnrnpN0MmZJJoWUtegxstviic
14
+ NjNYTW9pMsKpTu01RFu3CmUsKMAtXRIQH5MOEXcWP8YGy4Uv8BaI+g3JyhyeFSvm
15
+ IHQD0XuX14D1AgMBAAGjggEIMIIBBDCBnwYDVR0RBIGXMIGUgglsb2NhbGhvc3SC
16
+ CyoubG9jYWxob3N0ggkxMjcuMC4wLjGCDHZpbm90aHZrLmNvbYIOKi52aW5vdGh2
17
+ ay5jb22CEXZpbm90aGt1bWFydmsuY29tghMqLnZpbm90aGt1bWFydmsuY29tghFi
18
+ ZXRhLnZpbm90aHZrLmNvbYcEfwAAAYcQAAAAAAAAAAAAAAAAAAAAATALBgNVHQ8E
19
+ BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYEFBCiC1ydkt6a7pO4
20
+ pcpekwfff69CMB8GA1UdIwQYMBaAFH0vmIJXfNrNh8QlcN3vvoNuekb4MA0GCSqG
21
+ SIb3DQEBCwUAA4IBAQA2c1u+kI/xM8J0Jw6DIV24Yp9aazRdd2qSqfg4D/wS3U0f
22
+ r0hqb4PZS3/iUtC+OffswB/kbq3f7aP96W/R6GoeXdqNhwB31LaHB7E3g4Zo60km
23
+ ETf1k3GACuq+VXnBQruZJ3HMSDvZjuAskOkEs2mKJIP1VoXjdIOrsHXaNyFUoGkz
24
+ SFvz1wUK+EYWCaP2ASGB45ZP5z4taOMccE9AvzBP0jAmipEYmzulQSDtQemIHmop
25
+ Kk4oK/dH+ZD6P2xAqfyDcLXvNIflv49Dv2pBKA2bgTz7dGGJM/1/F3q5Hh31DZgg
26
+ klTy262oCm9v1cOkpeK0zN78Y5XFEhdboKU+JkOo
27
+ -----END CERTIFICATE-----
@@ -0,0 +1,77 @@
1
+ #!/bin/bash
2
+
3
+ # Script to generate self-signed CA and server certificates for local development
4
+ # This creates a trusted CA that can be added to your system keychain
5
+
6
+ echo "🔐 Generating SSL Certificates for Local Development"
7
+ echo "=================================================="
8
+
9
+ # Set variables
10
+ SSL_DIR="$(dirname "$0")"
11
+ PASSPHRASE="uiplatform"
12
+
13
+ # Colors for output
14
+ GREEN='\033[0;32m'
15
+ BLUE='\033[0;34m'
16
+ NC='\033[0m' # No Color
17
+
18
+ # Step 1: Generate CA private key
19
+ echo -e "\n${BLUE}Step 1: Generating CA private key...${NC}"
20
+ openssl genrsa -des3 -out "$SSL_DIR/ca-key.pem" -passout pass:$PASSPHRASE 2048
21
+
22
+ # Step 2: Generate CA certificate
23
+ echo -e "\n${BLUE}Step 2: Generating CA certificate...${NC}"
24
+ openssl req -x509 -new -nodes \
25
+ -key "$SSL_DIR/ca-key.pem" \
26
+ -passin pass:$PASSPHRASE \
27
+ -sha256 \
28
+ -days 1825 \
29
+ -out "$SSL_DIR/ca-cert.pem" \
30
+ -config "$SSL_DIR/openssl.cnf"
31
+
32
+ # Step 3: Generate server private key (without passphrase for easier use)
33
+ echo -e "\n${BLUE}Step 3: Generating server private key...${NC}"
34
+ openssl genrsa -out "$SSL_DIR/key.pem" 2048
35
+
36
+ # Step 4: Generate Certificate Signing Request (CSR)
37
+ echo -e "\n${BLUE}Step 4: Generating Certificate Signing Request...${NC}"
38
+ openssl req -new \
39
+ -key "$SSL_DIR/key.pem" \
40
+ -out "$SSL_DIR/server.csr" \
41
+ -config "$SSL_DIR/server.cnf"
42
+
43
+ # Step 5: Sign the server certificate with our CA
44
+ echo -e "\n${BLUE}Step 5: Signing server certificate with CA...${NC}"
45
+ openssl x509 -req \
46
+ -in "$SSL_DIR/server.csr" \
47
+ -CA "$SSL_DIR/ca-cert.pem" \
48
+ -CAkey "$SSL_DIR/ca-key.pem" \
49
+ -passin pass:$PASSPHRASE \
50
+ -CAcreateserial \
51
+ -out "$SSL_DIR/cert.pem" \
52
+ -days 825 \
53
+ -sha256 \
54
+ -extfile "$SSL_DIR/server.cnf" \
55
+ -extensions v3_req
56
+
57
+ # Clean up CSR file
58
+ rm "$SSL_DIR/server.csr"
59
+
60
+ # Step 6: Create certificate bundle (server cert + CA cert)
61
+ echo -e "\n${BLUE}Step 6: Creating certificate bundle...${NC}"
62
+ cat "$SSL_DIR/cert.pem" "$SSL_DIR/ca-cert.pem" > "$SSL_DIR/cert-bundle.pem"
63
+
64
+ echo -e "\n${GREEN}✅ Certificate generation complete!${NC}"
65
+ echo ""
66
+ echo "Generated files:"
67
+ echo " • ca-cert.pem - Root CA certificate (add this to system trust store)"
68
+ echo " • ca-key.pem - CA private key (keep secure)"
69
+ echo " • cert.pem - Server certificate"
70
+ echo " • cert-bundle.pem - Server cert + CA cert (use this with http-server)"
71
+ echo " • key.pem - Server private key"
72
+ echo ""
73
+ echo "Next steps:"
74
+ echo " 1. Trust the CA certificate (see TRUST-CERT.md for instructions)"
75
+ echo " 2. Run: npm start"
76
+ echo " 3. Visit: https://localhost"
77
+ echo ""