@financial-times/qanda-ui 0.0.1-beta.2 → 0.0.1-beta.21

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 (123) hide show
  1. package/README.md +38 -6
  2. package/dist/cjs/components/Author/index.js +19 -0
  3. package/dist/cjs/components/Calendar/Apps.js +48 -0
  4. package/dist/cjs/components/Calendar/CalendarList.js +12 -0
  5. package/dist/cjs/components/Calendar/CalendarListItem.js +24 -0
  6. package/dist/cjs/components/Calendar/index.js +47 -0
  7. package/dist/cjs/components/CountdownTimer/index.js +91 -0
  8. package/dist/cjs/components/EmbedFormField/index.js +24 -0
  9. package/dist/cjs/components/ErrorMessage/humanReadableError.js +74 -0
  10. package/dist/cjs/components/ErrorMessage/index.js +63 -0
  11. package/dist/cjs/components/Expander/index.js +71 -0
  12. package/dist/cjs/components/ExpertDrawer/index.js +36 -0
  13. package/dist/cjs/components/FloatingActionBar/index.js +59 -0
  14. package/dist/cjs/components/Loader/index.js +7 -0
  15. package/dist/cjs/components/MessageBox/index.js +7 -0
  16. package/dist/cjs/components/Overlay/index.js +18 -0
  17. package/dist/cjs/components/Qanda.js +37 -0
  18. package/dist/cjs/components/QandaBlock/index.js +78 -0
  19. package/dist/cjs/components/QandaContainer.js +99 -0
  20. package/dist/cjs/components/QandaProvider.js +11 -0
  21. package/dist/cjs/components/QuestionForm/index.js +165 -0
  22. package/dist/cjs/components/QuestionForm/messagesByUserType.js +33 -0
  23. package/dist/cjs/components/Stream/index.js +37 -0
  24. package/dist/cjs/components/Survey/index.js +36 -0
  25. package/dist/cjs/hooks/useIsMobile.js +15 -0
  26. package/dist/cjs/index.js +53 -0
  27. package/dist/cjs/services/comments-api.js +152 -0
  28. package/dist/cjs/services/error-middleware.js +47 -0
  29. package/dist/cjs/services/reliability.js +79 -0
  30. package/dist/cjs/store/expertSlice.js +26 -0
  31. package/dist/cjs/store/index.js +30 -0
  32. package/dist/cjs/store/questionSlice.js +32 -0
  33. package/dist/cjs/store/stream.js +17 -0
  34. package/dist/cjs/store/updateComments.js +40 -0
  35. package/dist/cjs/store/user.js +51 -0
  36. package/dist/cjs/utils/auth.js +26 -0
  37. package/dist/cjs/utils/qandas.js +20 -0
  38. package/dist/cjs/utils/strings.js +16 -0
  39. package/dist/cjs/utils/tracking.js +11 -0
  40. package/dist/cjs/utils/validate-display-name.js +22 -0
  41. package/dist/esm/components/Author/index.js +14 -0
  42. package/dist/esm/components/Calendar/Apps.js +46 -0
  43. package/dist/esm/components/Calendar/CalendarList.js +7 -0
  44. package/dist/esm/components/Calendar/CalendarListItem.js +22 -0
  45. package/dist/esm/components/Calendar/index.js +42 -0
  46. package/dist/esm/components/CountdownTimer/index.js +88 -0
  47. package/dist/esm/components/EmbedFormField/index.js +22 -0
  48. package/dist/esm/components/ErrorMessage/humanReadableError.js +71 -0
  49. package/dist/esm/components/ErrorMessage/index.js +57 -0
  50. package/dist/esm/components/Expander/index.js +69 -0
  51. package/dist/esm/components/ExpertDrawer/index.js +31 -0
  52. package/dist/esm/components/FloatingActionBar/index.js +57 -0
  53. package/dist/esm/components/Loader/index.js +4 -0
  54. package/dist/esm/components/MessageBox/index.js +5 -0
  55. package/dist/esm/components/Overlay/index.js +13 -0
  56. package/dist/esm/components/Qanda.js +32 -0
  57. package/dist/esm/components/QandaBlock/index.js +73 -0
  58. package/dist/esm/components/QandaContainer.js +94 -0
  59. package/dist/esm/components/QandaProvider.js +8 -0
  60. package/dist/esm/components/QuestionForm/index.js +159 -0
  61. package/dist/esm/components/QuestionForm/messagesByUserType.js +28 -0
  62. package/dist/esm/components/Stream/index.js +32 -0
  63. package/dist/esm/components/Survey/index.js +34 -0
  64. package/dist/esm/hooks/useIsMobile.js +12 -0
  65. package/dist/esm/index.js +46 -0
  66. package/dist/esm/services/comments-api.js +147 -0
  67. package/dist/esm/services/error-middleware.js +43 -0
  68. package/dist/esm/services/reliability.js +75 -0
  69. package/dist/esm/store/expertSlice.js +22 -0
  70. package/dist/esm/store/index.js +24 -0
  71. package/dist/esm/store/questionSlice.js +28 -0
  72. package/dist/esm/store/stream.js +14 -0
  73. package/dist/esm/store/updateComments.js +36 -0
  74. package/dist/esm/store/user.js +45 -0
  75. package/dist/esm/utils/auth.js +24 -0
  76. package/dist/esm/utils/qandas.js +16 -0
  77. package/dist/esm/utils/strings.js +13 -0
  78. package/dist/esm/utils/tracking.js +7 -0
  79. package/dist/esm/utils/validate-display-name.js +19 -0
  80. package/dist/qanda.scss +802 -0
  81. package/dist/types/components/Author/index.d.ts +18 -0
  82. package/dist/types/components/Calendar/Apps.d.ts +14 -0
  83. package/dist/types/components/Calendar/CalendarList.d.ts +2 -0
  84. package/dist/types/components/Calendar/CalendarListItem.d.ts +8 -0
  85. package/dist/types/components/Calendar/index.d.ts +2 -0
  86. package/dist/types/components/CountdownTimer/index.d.ts +6 -0
  87. package/dist/types/components/EmbedFormField/index.d.ts +5 -0
  88. package/dist/types/components/ErrorMessage/humanReadableError.d.ts +29 -0
  89. package/dist/types/components/ErrorMessage/index.d.ts +8 -0
  90. package/dist/types/components/Expander/index.d.ts +8 -0
  91. package/dist/types/components/ExpertDrawer/index.d.ts +2 -0
  92. package/dist/types/components/FloatingActionBar/index.d.ts +4 -0
  93. package/dist/types/components/Loader/index.d.ts +14 -0
  94. package/dist/types/components/MessageBox/index.d.ts +10 -0
  95. package/dist/types/components/Overlay/index.d.ts +12 -0
  96. package/dist/types/components/Qanda.d.ts +3 -0
  97. package/dist/types/components/QandaBlock/index.d.ts +7 -0
  98. package/dist/types/components/QandaContainer.d.ts +6 -0
  99. package/dist/types/components/QandaProvider.d.ts +9 -0
  100. package/dist/types/components/QuestionForm/index.d.ts +1 -0
  101. package/dist/types/components/QuestionForm/messagesByUserType.d.ts +7 -0
  102. package/dist/types/components/Stream/index.d.ts +5 -0
  103. package/dist/types/components/Survey/index.d.ts +6 -0
  104. package/dist/types/hooks/useIsMobile.d.ts +1 -0
  105. package/dist/types/index.d.ts +17 -0
  106. package/dist/types/services/comments-api.d.ts +52 -0
  107. package/dist/types/services/error-middleware.d.ts +2 -0
  108. package/dist/types/services/reliability.d.ts +19 -0
  109. package/dist/types/store/expertSlice.d.ts +14 -0
  110. package/dist/types/store/index.d.ts +218 -0
  111. package/dist/types/store/questionSlice.d.ts +16 -0
  112. package/dist/types/store/stream.d.ts +7 -0
  113. package/dist/types/store/updateComments.d.ts +3 -0
  114. package/dist/types/store/user.d.ts +26 -0
  115. package/dist/types/utils/auth.d.ts +6 -0
  116. package/dist/types/utils/qandas.d.ts +2 -0
  117. package/dist/types/utils/strings.d.ts +1 -0
  118. package/dist/types/utils/tracking.d.ts +2 -0
  119. package/dist/types/utils/validate-display-name.d.ts +1 -0
  120. package/package.json +35 -29
  121. package/dist/index.html +0 -19
  122. package/dist/index.js +0 -2
  123. package/dist/index.js.LICENSE.txt +0 -15
@@ -0,0 +1,2 @@
1
+ import type { Comment } from '../types/comment';
2
+ export declare const getLatestAnsweredQuestion: (questions: Comment[]) => string;
@@ -0,0 +1 @@
1
+ export declare function cleanString(str: string): string;
@@ -0,0 +1,2 @@
1
+ import type { TrackingData } from '../types/tracking';
2
+ export declare const trackEvent: (trackingData: TrackingData) => void;
@@ -0,0 +1 @@
1
+ export default function validateDisplayName(displayName: string): string | false;
package/package.json CHANGED
@@ -1,10 +1,15 @@
1
1
  {
2
2
  "name": "@financial-times/qanda-ui",
3
- "version": "0.0.1-beta.2",
3
+ "version": "0.0.1-beta.21",
4
4
  "description": "Components for the Live Q&A UI",
5
- "main": "./dist/index.js",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "types": "dist/types/index.d.ts",
6
8
  "exports": {
7
- ".": "./dist/index.js",
9
+ ".": {
10
+ "import": "./dist/esm/index.js",
11
+ "require": "./dist/cjs/index.js"
12
+ },
8
13
  "./scss": "./dist/qanda.scss"
9
14
  },
10
15
  "files": [
@@ -12,13 +17,16 @@
12
17
  ],
13
18
  "scripts": {
14
19
  "start": "dotcom-tool-kit run:local",
15
- "build": "dotcom-tool-kit build:local && npm run build:sass",
20
+ "build": "dotcom-tool-kit build:local",
16
21
  "build:sass": "node sass-build.js",
22
+ "build:esm": "tsc --project tsconfig.esm.json",
23
+ "build:cjs": "tsc --project tsconfig.cjs.json",
24
+ "build:all": "npm run build:esm && npm run build:cjs && npm run build:sass",
17
25
  "clean": "rm -rf dist",
18
26
  "prebuild": "npm run clean",
19
27
  "dev": "webpack serve --config webpack.dev.js --open --host=local.ft.com",
20
28
  "lint": "eslint 'src/**/*.{ts,tsx}'",
21
- "test": "NODE_OPTIONS=\"--max-old-space-size=4096\" dotcom-tool-kit test:local",
29
+ "test": "dotcom-tool-kit test:local",
22
30
  "prepare": "husky"
23
31
  },
24
32
  "author": "Financial Times Ltd",
@@ -32,18 +40,8 @@
32
40
  },
33
41
  "homepage": "https://github.com/Financial-Times/qanda-ui#readme",
34
42
  "dependencies": {
35
- "@financial-times/cp-content-pipeline-client": "^4.8.3",
36
- "@financial-times/cp-content-pipeline-ui": "^7.11.1",
37
- "@financial-times/x-engine": "^14.8.7",
38
- "@preact/compat": "^18.3.1",
39
- "@reduxjs/toolkit": "^2.5.0",
40
- "immer": "^10.1.1",
41
- "preact": "^10.25.1",
42
- "preact-render-to-string": "^6.5.12",
43
- "react": "npm:@preact/compat@^18.3.1",
44
- "react-dom": "npm:@preact/compat@^18.3.1",
45
- "react-redux": "^9.2.0",
46
- "redux": "^5.0.1"
43
+ "@reduxjs/toolkit": "^1.9.5",
44
+ "classnames": "^2.5.1"
47
45
  },
48
46
  "devDependencies": {
49
47
  "@babel/core": "^7.26.0",
@@ -51,19 +49,16 @@
51
49
  "@babel/preset-env": "^7.26.0",
52
50
  "@babel/preset-react": "^7.26.3",
53
51
  "@babel/preset-typescript": "^7.26.0",
52
+ "@types/react-redux": "^7.1.34",
54
53
  "@dotcom-tool-kit/component": "^5.1.12",
55
54
  "@dotcom-tool-kit/jest": "^4.3.1",
56
- "@dotcom-tool-kit/node": "^4.3.1",
57
- "@dotcom-tool-kit/webpack": "^4.3.1",
58
55
  "@financial-times/o-colors": "^6.7.0",
59
56
  "@financial-times/o-icons": "^7.8.0",
60
57
  "@jest/globals": "^29.7.0",
61
58
  "@testing-library/jest-dom": "^6.6.3",
62
59
  "@testing-library/preact": "^3.2.4",
63
- "@types/express": "^4.17.21",
64
60
  "@types/jest": "^29.5.14",
65
- "@types/node": "^22.10.5",
66
- "@types/react": "^19.0.2",
61
+ "@types/jest-axe": "^3.5.9",
67
62
  "@typescript-eslint/eslint-plugin": "^8.18.0",
68
63
  "@typescript-eslint/parser": "^8.18.0",
69
64
  "babel-jest": "^29.7.0",
@@ -77,11 +72,11 @@
77
72
  "eslint-plugin-react": "^7.37.2",
78
73
  "eslint-plugin-react-hooks": "^4.6.2",
79
74
  "eventsourcemock": "^2.0.0",
80
- "express": "^4.21.2",
81
75
  "html-webpack-plugin": "^5.6.3",
82
76
  "husky": "^9.1.7",
83
77
  "identity-obj-proxy": "^3.0.0",
84
78
  "jest": "^29.7.0",
79
+ "jest-axe": "^10.0.0",
85
80
  "jest-environment-jsdom": "^29.7.0",
86
81
  "jest-fixed-jsdom": "^0.0.9",
87
82
  "lint-staged": "^15.2.11",
@@ -100,15 +95,26 @@
100
95
  "webpack-merge": "^6.0.1"
101
96
  },
102
97
  "peerDependencies": {
103
- "@financial-times/n-tracking": "^7.6.0",
98
+ "@dotcom-reliability-kit/client-metrics-web": "^0.1.2",
99
+ "@financial-times/cp-content-pipeline-client": "^4.8.3",
100
+ "@financial-times/cp-content-pipeline-ui": "^9.2.1",
101
+ "@financial-times/n-tracking": "^7.7.0",
104
102
  "@financial-times/o-colors": "^6.7",
105
- "@financial-times/o-comments": "^11.2.1",
106
- "@financial-times/o-forms": "^9.12.1",
103
+ "@financial-times/o-comments": "^13.0.1",
104
+ "@financial-times/o-forms": "^10.0.2",
107
105
  "@financial-times/o-icons": "^7.8",
108
- "@financial-times/o-loading": "^5.2.3",
106
+ "@financial-times/o-labels": "^7.0.1",
107
+ "@financial-times/o-loading": "^6.0.0",
109
108
  "@financial-times/o-message": "^6.0.0",
110
- "@financial-times/o3-button": "^3.2.0",
111
- "@financial-times/o3-foundation": "^3.2"
109
+ "@financial-times/o-tracking": "^4.9.0",
110
+ "@financial-times/o3-button": "^3.7.0",
111
+ "@financial-times/o3-foundation": "^3.2",
112
+ "preact": "^10.6.6",
113
+ "preact-render-to-string": "^6.4.0",
114
+ "react": "17.x || 18.x",
115
+ "react-dom": "17.x || 18.x",
116
+ "react-redux": "^7.2.2",
117
+ "redux": "^4.0.5"
112
118
  },
113
119
  "lint-staged": {
114
120
  "**/*": "prettier --write --ignore-unknown"
package/dist/index.html DELETED
@@ -1,19 +0,0 @@
1
- <!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>Live Q&A UI</title><style>body {
2
- margin: 0;
3
- font-family: Georgia, serif;
4
- background-color: #fff2e8;
5
- color: #333;
6
- text-align: left;
7
- }
8
- h1 {
9
- color: #007acc;
10
- font-size: 2.5rem;
11
- }
12
- p {
13
- font-size: 1.2rem;
14
- margin-top: 10px;
15
- }
16
- .app-container {
17
- text-align: center;
18
- padding: 80px 20px;
19
- }</style></head><body data-o3-brand="core"><div id="root" class="app-container"></div><script defer="defer" src="index.js"></script></body></html>