ruru-components 2.0.0-0.9 → 2.0.0-alpha.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.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # ruru-components
2
2
 
3
+ ## 2.0.0-alpha.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`759ad403d`](https://github.com/benjie/postgraphile-private/commit/759ad403d71363312c5225c165873ae84b8a098c)
8
+ Thanks [@benjie](https://github.com/benjie)! - Alpha release - see
9
+ https://postgraphile.org/news/2023-04-26-version-5-alpha
10
+
11
+ ## 2.0.0-1.1
12
+
13
+ ### Patch Changes
14
+
15
+ - [#267](https://github.com/benjie/postgraphile-private/pull/267)
16
+ [`159735204`](https://github.com/benjie/postgraphile-private/commit/15973520462d4a95e3cdf04fdacfc71ca851122f)
17
+ Thanks [@benjie](https://github.com/benjie)! - Add formatting for SQL aliases
18
+
19
+ - [#260](https://github.com/benjie/postgraphile-private/pull/260)
20
+ [`d5312e6b9`](https://github.com/benjie/postgraphile-private/commit/d5312e6b968fbeb46d074b82a41b4bdbc166598c)
21
+ Thanks [@benjie](https://github.com/benjie)! - TypeScript v5 is now required
22
+
3
23
  ## 2.0.0-0.9
4
24
 
5
25
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"Explain.d.ts","sourceRoot":"","sources":["../../src/components/Explain.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAI7D,eAAO,MAAM,OAAO,EAAE,EAAE,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAChC,CA6BA,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,CA6HA,CAAC"}
1
+ {"version":3,"file":"Explain.d.ts","sourceRoot":"","sources":["../../src/components/Explain.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAK7D,eAAO,MAAM,OAAO,EAAE,EAAE,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAChC,CA6BA,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,CA6GA,CAAC"}
@@ -5,6 +5,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
6
  const react_dom_1 = require("react-dom");
7
7
  const Copy_js_1 = require("./Copy.js");
8
+ const FormatSQL_js_1 = require("./FormatSQL.js");
8
9
  const Mermaid_js_1 = require("./Mermaid.js");
9
10
  const Explain = ({ explain, setExplain, helpers, results }) => {
10
11
  return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: !results ? (!explain ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("p", { children: "WARNING: you've not enabled the 'explain' functionality" }), (0, jsx_runtime_1.jsx)("p", { children: (0, jsx_runtime_1.jsx)("button", { onClick: () => setExplain(true), children: "Enable explain" }) })] })) : ((0, jsx_runtime_1.jsx)("p", { children: "There are no explain results to display - perhaps you have not yet ran an operation against a server that supports this feature?" }))) : results.operations.length === 0 ? ((0, jsx_runtime_1.jsx)("p", { children: "Empty explain results" })) : ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(exports.ExplainMain, { helpers: helpers, results: results }) })) }));
@@ -34,11 +35,7 @@ const ExplainMain = ({ results }) => {
34
35
  const component = (() => {
35
36
  switch (selectedResult?.type) {
36
37
  case "sql": {
37
- return ((0, jsx_runtime_1.jsxs)("div", { children: [selectedResult.explain ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("h4", { children: ["Result from SQL", " ", (0, jsx_runtime_1.jsx)("a", { href: "https://www.postgresql.org/docs/current/sql-explain.html", children: "EXPLAIN" }), " ", "on executed query:"] }), (0, jsx_runtime_1.jsx)("pre", { className: "explain-plan", children: (0, jsx_runtime_1.jsx)("code", { children: selectedResult.explain }) })] })) : null, (0, jsx_runtime_1.jsx)("h4", { children: "Executed SQL query:" }), (0, jsx_runtime_1.jsx)("pre", { className: "explain-sql", style: { fontSize: "0.75rem", whiteSpace: "pre-wrap" }, children: selectedResult.query.split("\n").map((line, i) => ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)("code", { style: {
38
- display: "block",
39
- marginLeft: "1.8rem",
40
- textIndent: "-1.8rem",
41
- }, children: line }, i) }))) })] }));
38
+ return ((0, jsx_runtime_1.jsxs)("div", { children: [selectedResult.explain ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("h4", { children: ["Result from SQL", " ", (0, jsx_runtime_1.jsx)("a", { href: "https://www.postgresql.org/docs/current/sql-explain.html", children: "EXPLAIN" }), " ", "on executed query:"] }), (0, jsx_runtime_1.jsx)("pre", { className: "explain-plan", children: (0, jsx_runtime_1.jsx)("code", { children: selectedResult.explain }) }), (0, jsx_runtime_1.jsx)(Copy_js_1.Copy, { text: selectedResult.explain, children: "Copy plan" })] })) : null, (0, jsx_runtime_1.jsx)("h4", { children: "Executed SQL query:" }), (0, jsx_runtime_1.jsx)(FormatSQL_js_1.FormatSQL, { sql: selectedResult.query }), (0, jsx_runtime_1.jsx)(Copy_js_1.Copy, { text: selectedResult.query, children: "Copy SQL" })] }));
42
39
  }
43
40
  case "mermaid-js": {
44
41
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Copy_js_1.Copy, { text: selectedResult.diagram, children: "Copy Mermaid.js Definition" }), (0, jsx_runtime_1.jsx)("div", { onClick: expand, children: (0, jsx_runtime_1.jsx)(Mermaid_js_1.Mermaid, { diagram: selectedResult.diagram }) }), expanded
@@ -1 +1 @@
1
- {"version":3,"file":"Explain.js","sourceRoot":"","sources":["../../src/components/Explain.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Explain.js","sourceRoot":"","sources":["../../src/components/Explain.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { FC } from "react";
2
+ export declare const FormatSQL: FC<{
3
+ sql: string;
4
+ }>;
5
+ //# sourceMappingURL=FormatSQL.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatSQL.d.ts","sourceRoot":"","sources":["../../src/components/FormatSQL.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CA+DzC,CAAC"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FormatSQL = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const FormatSQL = ({ sql }) => {
7
+ const [highlitIndex, setHighlitIndex] = (0, react_1.useState)(null);
8
+ const formattedSQL = (0, react_1.useMemo)(() => {
9
+ const lines = sql.split("\n");
10
+ const elements = [];
11
+ const knownIdentifiers = new Map();
12
+ let identifierCount = 0;
13
+ const makeParts = (line) => {
14
+ const parts = [];
15
+ let idx = 0;
16
+ const re = /__([a-zA-Z0-9](_?[a-zA-Z0-9])*)__/g;
17
+ let matches;
18
+ while ((matches = re.exec(line))) {
19
+ const start = matches.index;
20
+ const fin = re.lastIndex;
21
+ if (start > idx) {
22
+ parts.push((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: line.substring(idx, start) }));
23
+ }
24
+ idx = fin;
25
+ const [full] = matches;
26
+ const f = knownIdentifiers.get(full);
27
+ if (f) {
28
+ parts.push(f);
29
+ }
30
+ else {
31
+ const index = identifierCount++;
32
+ const sub = ((0, jsx_runtime_1.jsx)(Highlight, { n: index, highlit: index === highlitIndex, setHighlitIndex: setHighlitIndex, children: full }));
33
+ knownIdentifiers.set(full, sub);
34
+ parts.push(sub);
35
+ }
36
+ }
37
+ if (idx < line.length) {
38
+ parts.push((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: line.substring(idx) }));
39
+ }
40
+ return parts;
41
+ };
42
+ for (let i = 0, l = lines.length; i < l; i++) {
43
+ const line = lines[i];
44
+ const parts = makeParts(line);
45
+ elements.push((0, jsx_runtime_1.jsx)("code", { style: {
46
+ display: "block",
47
+ marginLeft: "1.8rem",
48
+ textIndent: "-1.8rem",
49
+ }, children: parts }, i));
50
+ }
51
+ return elements;
52
+ }, [sql, highlitIndex]);
53
+ return (0, jsx_runtime_1.jsx)("pre", { className: "explain-sql", children: formattedSQL });
54
+ };
55
+ exports.FormatSQL = FormatSQL;
56
+ const COLORS = [
57
+ "#00bfff",
58
+ "#ffa500",
59
+ "#7fff00",
60
+ "#ff1493",
61
+ "#808000",
62
+ "#dda0dd",
63
+ "#ff0000",
64
+ "#4169e1",
65
+ "#3cb371",
66
+ "#a52a2a",
67
+ "#ff00ff",
68
+ ];
69
+ const Highlight = ({ n, highlit, setHighlitIndex, children }) => {
70
+ const color = COLORS[n % COLORS.length];
71
+ const style = highlit
72
+ ? {
73
+ color,
74
+ borderRadius: "3px",
75
+ fontWeight: "900",
76
+ backgroundColor: "hsla(var(--color-primary),var(--alpha-background-medium))",
77
+ }
78
+ : { color };
79
+ const onMouseEnter = (0, react_1.useCallback)(() => {
80
+ setHighlitIndex(n);
81
+ }, [setHighlitIndex, n]);
82
+ const onMouseLeave = (0, react_1.useCallback)(() => {
83
+ setHighlitIndex(null);
84
+ }, [setHighlitIndex]);
85
+ return ((0, jsx_runtime_1.jsx)("strong", { style: style, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, children: children }));
86
+ };
87
+ //# sourceMappingURL=FormatSQL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatSQL.js","sourceRoot":"","sources":["../../src/components/FormatSQL.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ruru-components",
3
- "version": "2.0.0-0.9",
3
+ "version": "2.0.0-alpha.1",
4
4
  "description": "Grafast-flavoured GraphiQL distribution; the underlying React components",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -67,7 +67,7 @@
67
67
  "@types/react": "^18",
68
68
  "@types/react-dom": "^18.0.0",
69
69
  "graphql": "16.1.0-experimental-stream-defer.6",
70
- "jest": "^28.1.0",
70
+ "jest": "^28.1.3",
71
71
  "nodemon": "^2.0.15",
72
72
  "typescript": "^5.0.0-beta"
73
73
  }
package/ruru.css CHANGED
@@ -70,3 +70,9 @@
70
70
  .errorPopupError {
71
71
  padding: 10px;
72
72
  }
73
+
74
+ .explain-plan,
75
+ .explain-sql {
76
+ font-size: 0.75rem;
77
+ white-space: pre-wrap;
78
+ }