mirror of
https://github.com/apache/superset.git
synced 2026-04-20 08:34:37 +00:00
feat: AI-powered TypeScript migration framework with parallel processing (#35045)
Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Mehmet Salih Yavuz <salih.yavuz@proton.me> Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
This commit is contained in:
committed by
GitHub
parent
076e477fd4
commit
ecb3ac68ff
56
superset-frontend/src/utils/hostNamesConfig.ts
Normal file
56
superset-frontend/src/utils/hostNamesConfig.ts
Normal file
@@ -0,0 +1,56 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
import { initFeatureFlags } from '@superset-ui/core';
|
||||
import getBootstrapData from './getBootstrapData';
|
||||
|
||||
function getDomainsConfig(): string[] {
|
||||
const appContainer = document.getElementById('app');
|
||||
if (!appContainer) {
|
||||
return [];
|
||||
}
|
||||
|
||||
const availableDomains = new Set([window.location.hostname]);
|
||||
|
||||
// don't do domain sharding if a certain query param is set
|
||||
const disableDomainSharding =
|
||||
new URLSearchParams(window.location.search).get('disableDomainSharding') ===
|
||||
'1';
|
||||
if (disableDomainSharding) {
|
||||
return Array.from(availableDomains);
|
||||
}
|
||||
|
||||
const bootstrapData = getBootstrapData();
|
||||
// this module is a little special, it may be loaded before index.jsx,
|
||||
// where window.featureFlags get initialized
|
||||
// eslint-disable-next-line camelcase
|
||||
initFeatureFlags(bootstrapData.common.feature_flags);
|
||||
|
||||
if (bootstrapData?.common?.conf?.SUPERSET_WEBSERVER_DOMAINS) {
|
||||
const domains = bootstrapData.common.conf
|
||||
.SUPERSET_WEBSERVER_DOMAINS as string[];
|
||||
domains.forEach((hostName: string) => {
|
||||
availableDomains.add(hostName);
|
||||
});
|
||||
}
|
||||
return Array.from(availableDomains);
|
||||
}
|
||||
|
||||
export const availableDomains: string[] = getDomainsConfig();
|
||||
|
||||
export const allowCrossDomain: boolean = availableDomains.length > 1;
|
||||
Reference in New Issue
Block a user