mirror of
https://github.com/apache/superset.git
synced 2026-05-03 15:04:28 +00:00
Compare commits
8 Commits
refactor_q
...
example_th
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bc01eba075 | ||
|
|
96a1aa60e8 | ||
|
|
2ea0368c2d | ||
|
|
9e407e4e80 | ||
|
|
360e58c181 | ||
|
|
22d5eb7835 | ||
|
|
7c4a77a909 | ||
|
|
4e209e51d0 |
53
superset-frontend/package-lock.json
generated
53
superset-frontend/package-lock.json
generated
@@ -61,7 +61,7 @@
|
||||
"d3-color": "^3.1.0",
|
||||
"d3-scale": "^2.1.2",
|
||||
"dayjs": "^1.11.13",
|
||||
"dom-to-image-more": "^3.2.0",
|
||||
"dom-to-image-more": "^3.6.0",
|
||||
"dom-to-pdf": "^0.3.2",
|
||||
"echarts": "^5.6.0",
|
||||
"emotion-rgba": "0.0.12",
|
||||
@@ -140,7 +140,7 @@
|
||||
"devDependencies": {
|
||||
"@applitools/eyes-storybook": "^3.55.6",
|
||||
"@babel/cli": "^7.27.2",
|
||||
"@babel/compat-data": "^7.26.8",
|
||||
"@babel/compat-data": "^7.28.0",
|
||||
"@babel/core": "^7.26.0",
|
||||
"@babel/eslint-parser": "^7.25.9",
|
||||
"@babel/node": "^7.22.6",
|
||||
@@ -175,7 +175,7 @@
|
||||
"@testing-library/react": "^12.1.5",
|
||||
"@testing-library/react-hooks": "^8.0.1",
|
||||
"@testing-library/user-event": "^12.8.3",
|
||||
"@types/classnames": "^2.2.10",
|
||||
"@types/classnames": "^2.3.4",
|
||||
"@types/dom-to-image": "^2.6.7",
|
||||
"@types/jest": "^29.5.14",
|
||||
"@types/js-levenshtein": "^1.1.3",
|
||||
@@ -263,7 +263,7 @@
|
||||
"ts-jest": "^29.4.0",
|
||||
"ts-loader": "^9.5.1",
|
||||
"tscw-config": "^1.1.2",
|
||||
"tsx": "^4.19.2",
|
||||
"tsx": "^4.20.3",
|
||||
"typescript": "5.4.5",
|
||||
"vm-browserify": "^1.1.2",
|
||||
"webpack": "^5.99.9",
|
||||
@@ -1086,9 +1086,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@babel/compat-data": {
|
||||
"version": "7.27.2",
|
||||
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.2.tgz",
|
||||
"integrity": "sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==",
|
||||
"version": "7.28.0",
|
||||
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz",
|
||||
"integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
@@ -3989,18 +3989,18 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@deck.gl/core": {
|
||||
"version": "9.1.13",
|
||||
"resolved": "https://registry.npmjs.org/@deck.gl/core/-/core-9.1.13.tgz",
|
||||
"integrity": "sha512-c15DpwUEvDjmt3+/azSjcfhVQ5L5HiIj6LJob1KAwQOnB5zgVdKWukN/21ELQ7ekppEkfT0x4byRv5k4QVocqQ==",
|
||||
"version": "9.1.14",
|
||||
"resolved": "https://registry.npmjs.org/@deck.gl/core/-/core-9.1.14.tgz",
|
||||
"integrity": "sha512-tXakSSvi5g+EvxSsnnjoRO8z3XxHxISTRzzIqcs3AZuWHnDptK28y9iD0Da21ILop1IYLaWE1QTUe6IAdp/Wag==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@loaders.gl/core": "^4.2.0",
|
||||
"@loaders.gl/images": "^4.2.0",
|
||||
"@luma.gl/constants": "^9.1.5",
|
||||
"@luma.gl/core": "^9.1.5",
|
||||
"@luma.gl/engine": "^9.1.5",
|
||||
"@luma.gl/shadertools": "^9.1.5",
|
||||
"@luma.gl/webgl": "^9.1.5",
|
||||
"@luma.gl/constants": "~9.1.9",
|
||||
"@luma.gl/core": "~9.1.9",
|
||||
"@luma.gl/engine": "~9.1.9",
|
||||
"@luma.gl/shadertools": "~9.1.9",
|
||||
"@luma.gl/webgl": "~9.1.9",
|
||||
"@math.gl/core": "^4.1.0",
|
||||
"@math.gl/sun": "^4.1.0",
|
||||
"@math.gl/types": "^4.1.0",
|
||||
@@ -15253,9 +15253,10 @@
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@types/classnames": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/classnames/-/classnames-2.3.0.tgz",
|
||||
"integrity": "sha512-3GsbOoDYteFShlrBTKzI2Eii4vPg/jAf7LXRIn0WQePKlmhpkV0KoTMuawA7gZJkrbPrZGwv9IEAfIWaOaQK8w==",
|
||||
"version": "2.3.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/classnames/-/classnames-2.3.4.tgz",
|
||||
"integrity": "sha512-dwmfrMMQb9ujX1uYGvB5ERDlOzBNywnZAZBtOe107/hORWP05ESgU4QyaanZMWYYfd2BzrG78y13/Bju8IQcMQ==",
|
||||
"deprecated": "This is a stub types definition. classnames provides its own type definitions, so you do not need this installed.",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"classnames": "*"
|
||||
@@ -24128,9 +24129,9 @@
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/dom-to-image-more": {
|
||||
"version": "3.5.0",
|
||||
"resolved": "https://registry.npmjs.org/dom-to-image-more/-/dom-to-image-more-3.5.0.tgz",
|
||||
"integrity": "sha512-VF/vwfHsPNMHJb5W/5sAmco3UIlEWSEFLppInQwqwN4joUvBULDwE3CqVcUDkUWleke/nZ5KwIVSrrFlGw7WPA==",
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/dom-to-image-more/-/dom-to-image-more-3.6.0.tgz",
|
||||
"integrity": "sha512-0BB0M9gRRP7znKBNLRAvNyWnkDIzSgMSDcS7WdPDzPnWhW2YJqxUR/dCHiJ2HdCV3K2rVky5Vba8UF31mvrCuQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/dom-to-pdf": {
|
||||
@@ -54976,9 +54977,9 @@
|
||||
"license": "0BSD"
|
||||
},
|
||||
"node_modules/tsx": {
|
||||
"version": "4.19.4",
|
||||
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.19.4.tgz",
|
||||
"integrity": "sha512-gK5GVzDkJK1SI1zwHf32Mqxf2tSJkNx+eYcNly5+nHvWqXUJYUkWBQtKauoESz3ymezAI++ZwT855x5p5eop+Q==",
|
||||
"version": "4.20.3",
|
||||
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.20.3.tgz",
|
||||
"integrity": "sha512-qjbnuR9Tr+FJOMBqJCW5ehvIo/buZq7vH7qD7JziU98h6l3qGy0a/yPFjwO+y0/T7GFpNgNAvEcPPVfyT8rrPQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -61643,7 +61644,7 @@
|
||||
"@storybook/types": "8.4.7",
|
||||
"@types/react-loadable": "^5.5.11",
|
||||
"core-js": "3.40.0",
|
||||
"gh-pages": "^6.2.0",
|
||||
"gh-pages": "^6.3.0",
|
||||
"jquery": "^3.7.1",
|
||||
"memoize-one": "^5.2.1",
|
||||
"react": "^17.0.2",
|
||||
@@ -62584,7 +62585,7 @@
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@deck.gl/aggregation-layers": "^9.1.13",
|
||||
"@deck.gl/core": "^9.1.13",
|
||||
"@deck.gl/core": "^9.1.14",
|
||||
"@deck.gl/geo-layers": "^9.1.13",
|
||||
"@deck.gl/layers": "^9.1.13",
|
||||
"@deck.gl/react": "^9.1.13",
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
"d3-color": "^3.1.0",
|
||||
"d3-scale": "^2.1.2",
|
||||
"dayjs": "^1.11.13",
|
||||
"dom-to-image-more": "^3.2.0",
|
||||
"dom-to-image-more": "^3.6.0",
|
||||
"dom-to-pdf": "^0.3.2",
|
||||
"echarts": "^5.6.0",
|
||||
"emotion-rgba": "0.0.12",
|
||||
@@ -208,7 +208,7 @@
|
||||
"devDependencies": {
|
||||
"@applitools/eyes-storybook": "^3.55.6",
|
||||
"@babel/cli": "^7.27.2",
|
||||
"@babel/compat-data": "^7.26.8",
|
||||
"@babel/compat-data": "^7.28.0",
|
||||
"@babel/core": "^7.26.0",
|
||||
"@babel/eslint-parser": "^7.25.9",
|
||||
"@babel/node": "^7.22.6",
|
||||
@@ -243,7 +243,7 @@
|
||||
"@testing-library/react": "^12.1.5",
|
||||
"@testing-library/react-hooks": "^8.0.1",
|
||||
"@testing-library/user-event": "^12.8.3",
|
||||
"@types/classnames": "^2.2.10",
|
||||
"@types/classnames": "^2.3.4",
|
||||
"@types/dom-to-image": "^2.6.7",
|
||||
"@types/jest": "^29.5.14",
|
||||
"@types/js-levenshtein": "^1.1.3",
|
||||
@@ -331,7 +331,7 @@
|
||||
"ts-jest": "^29.4.0",
|
||||
"ts-loader": "^9.5.1",
|
||||
"tscw-config": "^1.1.2",
|
||||
"tsx": "^4.19.2",
|
||||
"tsx": "^4.20.3",
|
||||
"typescript": "5.4.5",
|
||||
"vm-browserify": "^1.1.2",
|
||||
"webpack": "^5.99.9",
|
||||
|
||||
@@ -57,5 +57,206 @@ const exampleThemes: Record<string, SerializableThemeConfig> = {
|
||||
},
|
||||
algorithm: ThemeAlgorithm.DARK,
|
||||
},
|
||||
claudette: {
|
||||
algorithm: 'dark',
|
||||
token: {
|
||||
colorPrimary: '#C15F3C',
|
||||
colorPrimaryHover: '#d16b48',
|
||||
colorPrimaryActive: '#a84f30',
|
||||
colorBgBase: '#1a1a1a',
|
||||
colorBgContainer: '#2a2a2a',
|
||||
colorBgElevated: '#323232',
|
||||
colorBgLayout: '#0f0f0f',
|
||||
colorBgSpotlight: '#323232',
|
||||
colorText: '#F4F3EE',
|
||||
colorTextSecondary: '#B1ADA1',
|
||||
colorTextTertiary: '#8a8680',
|
||||
colorTextQuaternary: '#6b6862',
|
||||
colorTextPlaceholder: '#B1ADA1',
|
||||
colorTextLightSolid: '#F4F3EE',
|
||||
colorBorder: '#404040',
|
||||
colorBorderSecondary: '#303030',
|
||||
colorFill: '#404040',
|
||||
colorFillSecondary: '#353535',
|
||||
colorFillTertiary: '#2a2a2a',
|
||||
colorFillQuaternary: '#1f1f1f',
|
||||
colorFillAlter: '#323232',
|
||||
colorIcon: '#B1ADA1',
|
||||
colorIconHover: '#F4F3EE',
|
||||
fontFamily:
|
||||
"-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu'",
|
||||
fontFamilyCode:
|
||||
"'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace",
|
||||
fontSize: 14,
|
||||
borderRadius: 6,
|
||||
borderRadiusLG: 8,
|
||||
wireframe: false,
|
||||
},
|
||||
},
|
||||
figmate: {
|
||||
algorithm: 'light',
|
||||
token: {
|
||||
colorPrimary: '#0d99ff',
|
||||
colorPrimaryHover: '#3dadff',
|
||||
colorPrimaryActive: '#0085e6',
|
||||
colorInfo: '#4c74f4',
|
||||
colorInfoHover: '#6b8af5',
|
||||
colorInfoActive: '#2d5af2',
|
||||
colorSuccess: '#00d2aa',
|
||||
colorSuccessHover: '#1adbba',
|
||||
colorSuccessActive: '#00c299',
|
||||
colorWarning: '#ffad33',
|
||||
colorWarningHover: '#ffbf5c',
|
||||
colorWarningActive: '#ff9900',
|
||||
colorError: '#ff5757',
|
||||
colorErrorHover: '#ff7a7a',
|
||||
colorErrorActive: '#ff3333',
|
||||
colorBgBase: '#ffffff',
|
||||
colorBgContainer: '#fafafa',
|
||||
colorBgElevated: '#ffffff',
|
||||
colorBgLayout: '#f5f5f5',
|
||||
colorText: '#1a1a1a',
|
||||
colorTextSecondary: '#666666',
|
||||
colorTextTertiary: '#999999',
|
||||
colorTextQuaternary: '#cccccc',
|
||||
colorTextPlaceholder: '#999999',
|
||||
colorBorder: '#e6e6e6',
|
||||
colorBorderSecondary: '#f0f0f0',
|
||||
colorFill: '#f0f0f0',
|
||||
colorFillSecondary: '#f5f5f5',
|
||||
colorFillTertiary: '#fafafa',
|
||||
colorFillQuaternary: '#ffffff',
|
||||
colorIcon: '#666666',
|
||||
colorIconHover: '#333333',
|
||||
fontFamily:
|
||||
'-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
|
||||
fontFamilyCode:
|
||||
'"SF Mono", Monaco, Inconsolata, "Roboto Mono", monospace',
|
||||
fontSize: 14,
|
||||
fontSizeLG: 16,
|
||||
fontSizeXL: 20,
|
||||
borderRadius: 8,
|
||||
borderRadiusLG: 12,
|
||||
borderRadiusSM: 6,
|
||||
lineHeight: 1.5,
|
||||
wireframe: false,
|
||||
motion: true,
|
||||
motionDurationSlow: '0.3s',
|
||||
motionDurationMid: '0.2s',
|
||||
motionDurationFast: '0.1s',
|
||||
},
|
||||
},
|
||||
hubert: {
|
||||
algorithm: 'dark',
|
||||
token: {
|
||||
colorPrimary: '#276EF1',
|
||||
colorPrimaryHover: '#4285f4',
|
||||
colorPrimaryActive: '#1557d6',
|
||||
colorInfo: '#276EF1',
|
||||
colorInfoHover: '#4285f4',
|
||||
colorInfoActive: '#1557d6',
|
||||
colorSuccess: '#3AA76D',
|
||||
colorSuccessHover: '#4db87d',
|
||||
colorSuccessActive: '#2d9657',
|
||||
colorWarning: '#FFC043',
|
||||
colorWarningHover: '#ffcd66',
|
||||
colorWarningActive: '#e6ac26',
|
||||
colorError: '#D44333',
|
||||
colorErrorHover: '#dd5a4c',
|
||||
colorErrorActive: '#bf3526',
|
||||
colorBgBase: '#000000',
|
||||
colorBgContainer: '#1a1a1a',
|
||||
colorBgElevated: '#2a2a2a',
|
||||
colorBgLayout: '#000000',
|
||||
colorBgSpotlight: '#333333',
|
||||
colorText: '#ffffff',
|
||||
colorTextSecondary: '#cccccc',
|
||||
colorTextTertiary: '#999999',
|
||||
colorTextQuaternary: '#666666',
|
||||
colorTextPlaceholder: '#999999',
|
||||
colorTextLightSolid: '#ffffff',
|
||||
colorBorder: '#333333',
|
||||
colorBorderSecondary: '#1a1a1a',
|
||||
colorFill: '#1a1a1a',
|
||||
colorFillSecondary: '#2a2a2a',
|
||||
colorFillTertiary: '#333333',
|
||||
colorFillQuaternary: '#404040',
|
||||
colorFillAlter: '#2a2a2a',
|
||||
colorIcon: '#cccccc',
|
||||
colorIconHover: '#ffffff',
|
||||
fontFamily:
|
||||
'-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
|
||||
fontFamilyCode:
|
||||
'"SF Mono", Monaco, Inconsolata, "Roboto Mono", monospace',
|
||||
fontSize: 14,
|
||||
fontSizeLG: 16,
|
||||
fontSizeXL: 20,
|
||||
fontWeightStrong: 600,
|
||||
borderRadius: 4,
|
||||
borderRadiusLG: 6,
|
||||
borderRadiusSM: 2,
|
||||
lineHeight: 1.4,
|
||||
lineWidthBold: 2,
|
||||
wireframe: false,
|
||||
motion: true,
|
||||
motionDurationSlow: '0.3s',
|
||||
motionDurationMid: '0.2s',
|
||||
motionDurationFast: '0.1s',
|
||||
},
|
||||
},
|
||||
bnb: {
|
||||
algorithm: 'light',
|
||||
token: {
|
||||
colorPrimary: '#FF5A5F',
|
||||
colorPrimaryHover: '#FF7479',
|
||||
colorPrimaryActive: '#E5464B',
|
||||
colorInfo: '#29696B',
|
||||
colorInfoHover: '#3D7D7F',
|
||||
colorInfoActive: '#1F5557',
|
||||
colorSuccess: '#5BCACE',
|
||||
colorSuccessHover: '#7DD4D8',
|
||||
colorSuccessActive: '#49B6BA',
|
||||
colorWarning: '#F4B02A',
|
||||
colorWarningHover: '#F6C054',
|
||||
colorWarningActive: '#E2A01E',
|
||||
colorError: '#C32F0E',
|
||||
colorErrorHover: '#D54428',
|
||||
colorErrorActive: '#A8280C',
|
||||
colorBgBase: '#ffffff',
|
||||
colorBgContainer: '#fafafa',
|
||||
colorBgElevated: '#ffffff',
|
||||
colorBgLayout: '#f7f7f7',
|
||||
colorText: '#222222',
|
||||
colorTextSecondary: '#484848',
|
||||
colorTextTertiary: '#767676',
|
||||
colorTextQuaternary: '#b0b0b0',
|
||||
colorTextPlaceholder: '#767676',
|
||||
colorBorder: '#e8e8e8',
|
||||
colorBorderSecondary: '#f0f0f0',
|
||||
colorFill: '#f7f7f7',
|
||||
colorFillSecondary: '#fafafa',
|
||||
colorFillTertiary: '#fcfcfc',
|
||||
colorFillQuaternary: '#ffffff',
|
||||
colorIcon: '#767676',
|
||||
colorIconHover: '#484848',
|
||||
fontFamily:
|
||||
'Circular, Circular Air Pro, Airbnb Cereal, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto',
|
||||
fontFamilyCode:
|
||||
'"SF Mono", Monaco, Inconsolata, "Roboto Mono", monospace',
|
||||
fontSize: 14,
|
||||
fontSizeLG: 16,
|
||||
fontSizeXL: 20,
|
||||
fontWeightStrong: 600,
|
||||
borderRadius: 8,
|
||||
borderRadiusLG: 12,
|
||||
borderRadiusSM: 4,
|
||||
lineHeight: 1.5,
|
||||
wireframe: false,
|
||||
motion: true,
|
||||
motionDurationSlow: '0.3s',
|
||||
motionDurationMid: '0.2s',
|
||||
motionDurationFast: '0.1s',
|
||||
},
|
||||
},
|
||||
};
|
||||
export default exampleThemes;
|
||||
|
||||
@@ -49,6 +49,21 @@ describe('isProbablyHTML', () => {
|
||||
const trickyText = 'a <= 10 and b > 10';
|
||||
expect(isProbablyHTML(trickyText)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return false for strings with angle brackets that are not HTML', () => {
|
||||
// Test case from issue #25561
|
||||
expect(isProbablyHTML('<abcdef:12345>')).toBe(false);
|
||||
|
||||
// Other similar cases
|
||||
expect(isProbablyHTML('<foo:bar>')).toBe(false);
|
||||
expect(isProbablyHTML('<123>')).toBe(false);
|
||||
expect(isProbablyHTML('<test@example.com>')).toBe(false);
|
||||
expect(isProbablyHTML('<custom-element>')).toBe(false);
|
||||
|
||||
// Mathematical expressions
|
||||
expect(isProbablyHTML('if x < 5 and y > 10')).toBe(false);
|
||||
expect(isProbablyHTML('price < $100')).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe('sanitizeHtmlIfNeeded', () => {
|
||||
|
||||
@@ -68,9 +68,87 @@ export function isProbablyHTML(text: string) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Check if the string contains common HTML patterns
|
||||
if (!hasHtmlTagPattern(text)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const parser = new DOMParser();
|
||||
const doc = parser.parseFromString(cleanedStr, 'text/html');
|
||||
return Array.from(doc.body.childNodes).some(({ nodeType }) => nodeType === 1);
|
||||
|
||||
// Check if parsing created actual HTML elements (not just text nodes)
|
||||
const elements = Array.from(doc.body.childNodes).filter(
|
||||
node => node.nodeType === 1,
|
||||
) as Element[];
|
||||
|
||||
// If no elements were created, it's not HTML
|
||||
if (elements.length === 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check if the elements are known HTML tags (not custom/unknown tags)
|
||||
// This prevents strings like "<abcdef:12345>" from being treated as HTML
|
||||
return elements.some(element => {
|
||||
const tagName = element.tagName.toLowerCase();
|
||||
// List of common HTML tags we want to recognize
|
||||
const knownHtmlTags = [
|
||||
'div',
|
||||
'span',
|
||||
'p',
|
||||
'a',
|
||||
'b',
|
||||
'i',
|
||||
'u',
|
||||
'em',
|
||||
'strong',
|
||||
'h1',
|
||||
'h2',
|
||||
'h3',
|
||||
'h4',
|
||||
'h5',
|
||||
'h6',
|
||||
'table',
|
||||
'tr',
|
||||
'td',
|
||||
'th',
|
||||
'tbody',
|
||||
'thead',
|
||||
'tfoot',
|
||||
'ul',
|
||||
'ol',
|
||||
'li',
|
||||
'img',
|
||||
'br',
|
||||
'hr',
|
||||
'pre',
|
||||
'code',
|
||||
'blockquote',
|
||||
'section',
|
||||
'article',
|
||||
'nav',
|
||||
'header',
|
||||
'footer',
|
||||
'form',
|
||||
'input',
|
||||
'button',
|
||||
'select',
|
||||
'option',
|
||||
'textarea',
|
||||
'label',
|
||||
'fieldset',
|
||||
'legend',
|
||||
'video',
|
||||
'audio',
|
||||
'canvas',
|
||||
'iframe',
|
||||
'script',
|
||||
'style',
|
||||
'link',
|
||||
'meta',
|
||||
'title',
|
||||
];
|
||||
return knownHtmlTags.includes(tagName);
|
||||
});
|
||||
}
|
||||
|
||||
export function sanitizeHtmlIfNeeded(htmlString: string) {
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
"@storybook/types": "8.4.7",
|
||||
"@types/react-loadable": "^5.5.11",
|
||||
"core-js": "3.40.0",
|
||||
"gh-pages": "^6.2.0",
|
||||
"gh-pages": "^6.3.0",
|
||||
"jquery": "^3.7.1",
|
||||
"memoize-one": "^5.2.1",
|
||||
"react": "^17.0.2",
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
],
|
||||
"dependencies": {
|
||||
"@deck.gl/aggregation-layers": "^9.1.13",
|
||||
"@deck.gl/core": "^9.1.13",
|
||||
"@deck.gl/core": "^9.1.14",
|
||||
"@deck.gl/geo-layers": "^9.1.13",
|
||||
"@deck.gl/layers": "^9.1.13",
|
||||
"@deck.gl/react": "^9.1.13",
|
||||
|
||||
Reference in New Issue
Block a user