@heartlandone/vega 2.82.0 → 2.83.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.
- package/dist/cjs/{app-globals-3350d580.js → app-globals-40b1b1b2.js} +1 -1
- package/dist/cjs/{dto-renderer-manager-ae5fcbba.js → dto-renderer-manager-7eb5c5ce.js} +42 -2
- package/dist/cjs/{element-appender-slimmer-dedd3a34.js → element-appender-slimmer-52c2b455.js} +84 -8
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/loader.cjs.js +4 -4
- package/dist/cjs/{token-extension-9b213b6b.js → token-extension-361273fb.js} +77 -20
- package/dist/cjs/vega-banner.cjs.entry.js +13 -2
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +37 -4
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-dialog_2.cjs.entry.js +27 -5
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +1 -1
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination.cjs.entry.js +1 -1
- package/dist/cjs/vega-popover_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +8 -9
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +1 -1
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +54 -9
- package/dist/cjs/vega-text.cjs.entry.js +10 -0
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +1 -1
- package/dist/cjs/vega.cjs.js +4 -4
- package/dist/collection/components/vega-banner/slimmers/renderers/vega-banner-renderer.js +11 -2
- package/dist/collection/components/vega-banner/vega-banner.js +3 -1
- package/dist/collection/components/vega-checkbox/vega-checkbox.css +19 -14
- package/dist/collection/components/vega-checkbox/vega-checkbox.js +57 -3
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.js +9 -3
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-nested-modal-controller.js +17 -2
- package/dist/collection/components/vega-pagination/internal/vega-pagination-go-to.js +1 -1
- package/dist/collection/components/vega-pagination/vega-pagination-page-selector-mobile/slimmers/renderers/page-selector-mobile-renderer.js +1 -1
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +12 -10
- package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +28 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +24 -6
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +23 -8
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +18 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +8 -3
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +47 -0
- package/dist/collection/components/vega-text/slimmers/renderers/vega-text-tooltip-renderer.js +10 -0
- package/dist/collection/helpers/rte-manager/dto-renderer-manager.js +42 -2
- package/dist/collection/helpers/slimmers/element-appender/body-positioned-wrapper/third-party-dialog-wrapper.js +73 -0
- package/dist/collection/helpers/slimmers/element-appender/element-appender-container-controller.js +6 -0
- package/dist/esm/{app-globals-0b7e8b50.js → app-globals-f67d0eaf.js} +1 -1
- package/dist/esm/{dto-renderer-manager-12bc9121.js → dto-renderer-manager-abc7eb5f.js} +42 -2
- package/dist/esm/{element-appender-slimmer-5aca1bca.js → element-appender-slimmer-29c94a18.js} +84 -8
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +4 -4
- package/dist/esm/{token-extension-9d717a35.js → token-extension-0710dbc5.js} +77 -20
- package/dist/esm/vega-banner.entry.js +13 -2
- package/dist/esm/vega-checkbox_2.entry.js +37 -4
- package/dist/esm/vega-date-picker_2.entry.js +1 -1
- package/dist/esm/vega-dialog_2.entry.js +27 -5
- package/dist/esm/vega-dropdown_5.entry.js +1 -1
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +1 -1
- package/dist/esm/vega-pagination.entry.js +1 -1
- package/dist/esm/vega-popover_2.entry.js +1 -1
- package/dist/esm/vega-progress-tracker_2.entry.js +8 -9
- package/dist/esm/vega-rich-text-content.entry.js +1 -1
- package/dist/esm/vega-rich-text-editor_4.entry.js +54 -9
- package/dist/esm/vega-text.entry.js +10 -0
- package/dist/esm/vega-time-picker_2.entry.js +1 -1
- package/dist/esm/vega-tooltip_2.entry.js +1 -1
- package/dist/esm/vega.js +4 -4
- package/dist/sri/vega-sri-manifest.json +70 -70
- package/dist/types/components/vega-banner/slimmers/renderers/vega-banner-renderer.d.ts +6 -0
- package/dist/types/components/vega-banner/vega-banner.d.ts +2 -0
- package/dist/types/components/vega-checkbox/vega-checkbox.d.ts +22 -1
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.d.ts +1 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-nested-modal-controller.d.ts +3 -2
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +8 -9
- package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +20 -2
- package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +13 -2
- package/dist/types/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.d.ts +15 -4
- package/dist/types/components/vega-rich-text-editor/extensions/table/table-extension.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/extension-controller.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.d.ts +4 -3
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +14 -1
- package/dist/types/components/vega-text/slimmers/renderers/vega-text-tooltip-renderer.d.ts +1 -0
- package/dist/types/components.d.ts +29 -5
- package/dist/types/helpers/rte-manager/dto-renderer-manager.d.ts +26 -1
- package/dist/types/helpers/slimmers/element-appender/body-positioned-wrapper/third-party-dialog-wrapper.d.ts +45 -0
- package/dist/types/helpers/slimmers/element-appender/element-appender-container-controller.d.ts +2 -0
- package/dist/types/types/components.type.d.ts +1 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/p-0bcb2945.entry.js +1 -0
- package/dist/vega/{p-a30ae8a1.js → p-0bf8743f.js} +1 -1
- package/dist/vega/p-142f371b.entry.js +1 -0
- package/dist/vega/p-158c6a9f.entry.js +1 -0
- package/dist/vega/p-1b48e8a5.entry.js +1 -0
- package/dist/vega/p-380abceb.entry.js +1 -0
- package/dist/vega/{p-3505f7cc.entry.js → p-54ba35e3.entry.js} +1 -1
- package/dist/vega/p-5be546c5.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-246eb001.entry.js → p-608f234f.entry.js} +1 -1
- package/dist/vega/p-81a11dc6.entry.js +1 -0
- package/dist/vega/{p-23c840dc.entry.js → p-8559e36f.entry.js} +1 -1
- package/dist/vega/p-90cb665e.entry.js +1 -0
- package/dist/vega/{p-88b6184c.entry.js → p-a4738b70.entry.js} +1 -1
- package/dist/vega/p-b6c3ce6d.js +1 -0
- package/dist/vega/p-b9728ca8.js +1 -0
- package/dist/vega/{p-7faaa5e1.entry.js → p-cc00135a.entry.js} +1 -1
- package/dist/vega/{p-97f36f4e.entry.js → p-e00fb667.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/vega/p-1dd6ba67.js +0 -1
- package/dist/vega/p-1efb47fe.entry.js +0 -1
- package/dist/vega/p-4f938ee4.entry.js +0 -1
- package/dist/vega/p-6d95390b.entry.js +0 -1
- package/dist/vega/p-a5bd3ecd.entry.js +0 -1
- package/dist/vega/p-c366e7f7.entry.js +0 -1
- package/dist/vega/p-d872beb1.entry.js +0 -1
- package/dist/vega/p-d9d5c693.entry.js +0 -1
- package/dist/vega/p-dd6211cd.js +0 -1
- package/dist/vega/p-fcabf0dc.js +0 -1
|
@@ -12,7 +12,7 @@ const internalTranslationController = require('./internal-translation-controller
|
|
|
12
12
|
const contentState = require('./content-state-648652b4.js');
|
|
13
13
|
const codeBlock = require('./code-block-b1f8aded.js');
|
|
14
14
|
const typeGuard = require('./type-guard-3ec852d7.js');
|
|
15
|
-
const dtoRendererManager = require('./dto-renderer-manager-
|
|
15
|
+
const dtoRendererManager = require('./dto-renderer-manager-7eb5c5ce.js');
|
|
16
16
|
const baseRenderer = require('./base-renderer-0a3b62b7.js');
|
|
17
17
|
const internalIconManager = require('./internal-icon-manager-c989189a.js');
|
|
18
18
|
const vegaNonceManager = require('./vega-nonce-manager-df69d3ed.js');
|
|
@@ -1232,12 +1232,26 @@ class VegaRTEExtension {
|
|
|
1232
1232
|
static registerFilterStylesStrategy(blockOrNodeClassName, strategy) {
|
|
1233
1233
|
codeBlock.RTEFilterStylesStrategyRegistry.register(blockOrNodeClassName, strategy);
|
|
1234
1234
|
}
|
|
1235
|
+
/**
|
|
1236
|
+
* Lifecycle hook called by the rich text editor before the first render
|
|
1237
|
+
* (during `componentWillLoad`). Override this method to perform per-host
|
|
1238
|
+
* pre-render setup — for example, registering a host-specific toolbar button
|
|
1239
|
+
* renderer via {@link registerToolbarButtonRenderer} so that each editor on
|
|
1240
|
+
* the page gets its own isolated renderer instance.
|
|
1241
|
+
*
|
|
1242
|
+
* The default implementation is a no-op; subclasses may override selectively.
|
|
1243
|
+
*
|
|
1244
|
+
* @typedef HTMLVegaRichTextEditorElement - The type of the host rich text editor element.
|
|
1245
|
+
* @param {HTMLVegaRichTextEditorElement} host - The host rich text editor element that is about to load.
|
|
1246
|
+
*/
|
|
1247
|
+
prepareBeforeLoad(host) {
|
|
1248
|
+
}
|
|
1235
1249
|
/**
|
|
1236
1250
|
* Initializes the RTE extension with the provided context.
|
|
1237
1251
|
*
|
|
1238
1252
|
* @param {RTEExtensionContext} context - The context of the RTE extension.
|
|
1239
1253
|
*/
|
|
1240
|
-
|
|
1254
|
+
initialExtensionAfterLoad(context) {
|
|
1241
1255
|
this.extensionContext = context;
|
|
1242
1256
|
RTEExtensionContextManager$1.setExtensionContext(context);
|
|
1243
1257
|
}
|
|
@@ -1285,12 +1299,22 @@ class VegaRTEExtension {
|
|
|
1285
1299
|
}
|
|
1286
1300
|
/**
|
|
1287
1301
|
* Register a toolbar button renderer for the extension.
|
|
1302
|
+
* When a `host` element is provided the renderer is registered in the per-host map
|
|
1303
|
+
* (via {@link RTEDTORendererManager#registerRTEToolbarButtonRendererForHost}), giving
|
|
1304
|
+
* that host an isolated renderer instance that takes precedence over the global singleton.
|
|
1305
|
+
* Omit `host` to fall back to the global registration (backwards-compatible default).
|
|
1288
1306
|
*
|
|
1289
1307
|
* @param {string} type - The type of the toolbar button.
|
|
1290
1308
|
* @param {VegaRTEToolbarButtonRenderer} renderer - The renderer to register.
|
|
1309
|
+
* @param {HTMLVegaRichTextEditorElement} [host] - Optional host element for per-host isolation.
|
|
1291
1310
|
*/
|
|
1292
|
-
registerToolbarButtonRenderer(type, renderer) {
|
|
1293
|
-
|
|
1311
|
+
registerToolbarButtonRenderer(type, renderer, host) {
|
|
1312
|
+
if (host) {
|
|
1313
|
+
dtoRendererManager.RTEDTORendererManager.registerRTEToolbarButtonRendererForHost(host, type, renderer);
|
|
1314
|
+
}
|
|
1315
|
+
else {
|
|
1316
|
+
dtoRendererManager.RTEDTORendererManager.registerRTEToolbarButtonRenderer(type, renderer);
|
|
1317
|
+
}
|
|
1294
1318
|
}
|
|
1295
1319
|
/**
|
|
1296
1320
|
* This is a helper method that utilizes RTEUtils to register common strategies.
|
|
@@ -1777,30 +1801,41 @@ class RTETokenNodeRenderer extends VegaRTEExtensionRenderer {
|
|
|
1777
1801
|
|
|
1778
1802
|
/**
|
|
1779
1803
|
* Toolbar button renderer for language selection in Vega Rich Text Editor.
|
|
1804
|
+
*
|
|
1805
|
+
* Each {@link HTMLVegaRichTextEditorElement} that uses a language extension receives its
|
|
1806
|
+
* **own** instance of this renderer, registered in the per-host map inside
|
|
1807
|
+
* {@link RTEDTORendererManager} via {@link VegaRTEExtension#prepareBeforeLoad}. Because
|
|
1808
|
+
* every editor has a dedicated renderer, all state (label DOM ref, selected language, and
|
|
1809
|
+
* the language-change callback) is held in plain instance fields — no WeakMaps or shared
|
|
1810
|
+
* singletons are required.
|
|
1780
1811
|
*/
|
|
1781
1812
|
class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
1782
|
-
constructor(languageList, languageChangeCallback, selectedLanguage) {
|
|
1813
|
+
constructor(languageList, languageChangeCallback, selectedLanguage = '') {
|
|
1783
1814
|
super();
|
|
1784
1815
|
this.languageList = [];
|
|
1785
|
-
this.
|
|
1816
|
+
this.languageChangeCallback = null;
|
|
1817
|
+
this.selectedLanguage = '';
|
|
1786
1818
|
this.labelRef = null;
|
|
1787
1819
|
/**
|
|
1788
1820
|
* Handles the language selection event.
|
|
1821
|
+
* Because each editor has its own renderer instance, the language-change callback
|
|
1822
|
+
* is stored directly on this instance — no indirect context lookup is needed.
|
|
1789
1823
|
*
|
|
1790
1824
|
* @param {string} itemKey - The key of the selected language item.
|
|
1791
1825
|
*/
|
|
1792
1826
|
this.handleDropdownClick = (itemKey) => {
|
|
1793
1827
|
this.setSelectedLanguage(itemKey);
|
|
1794
1828
|
if (typeof this.languageChangeCallback === 'function') {
|
|
1795
|
-
this.languageChangeCallback(
|
|
1829
|
+
this.languageChangeCallback(itemKey);
|
|
1796
1830
|
}
|
|
1797
1831
|
};
|
|
1798
1832
|
this.languageList = languageList;
|
|
1799
|
-
this.selectedLanguage = selectedLanguage;
|
|
1800
1833
|
this.languageChangeCallback = languageChangeCallback;
|
|
1834
|
+
this.selectedLanguage = selectedLanguage;
|
|
1801
1835
|
}
|
|
1802
1836
|
/**
|
|
1803
|
-
*
|
|
1837
|
+
* Updates the selected language and refreshes the button label text in-place,
|
|
1838
|
+
* without requiring a full re-render of the toolbar.
|
|
1804
1839
|
*
|
|
1805
1840
|
* @param {string} language The language key to set as selected.
|
|
1806
1841
|
*/
|
|
@@ -1830,7 +1865,8 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
1830
1865
|
]);
|
|
1831
1866
|
}
|
|
1832
1867
|
/**
|
|
1833
|
-
* Override to
|
|
1868
|
+
* Override to capture the rendered label element ref so that
|
|
1869
|
+
* {@link setSelectedLanguage} can update the button text without a full re-render.
|
|
1834
1870
|
*
|
|
1835
1871
|
* @inheritDoc
|
|
1836
1872
|
*/
|
|
@@ -1840,7 +1876,9 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
1840
1876
|
variant: 'font-field-label-sm',
|
|
1841
1877
|
color: isDisabled ? 'text-disabled' : 'text-primary',
|
|
1842
1878
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
1843
|
-
ref: (el) =>
|
|
1879
|
+
ref: (el) => {
|
|
1880
|
+
this.labelRef = el;
|
|
1881
|
+
},
|
|
1844
1882
|
}, label);
|
|
1845
1883
|
}
|
|
1846
1884
|
/* istanbul ignore next */
|
|
@@ -1858,8 +1896,9 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
1858
1896
|
* @returns {string} The label of the language, or the key if not found.
|
|
1859
1897
|
*/
|
|
1860
1898
|
getLanguageLabelByKey(key) {
|
|
1899
|
+
var _a;
|
|
1861
1900
|
const language = this.getListItemByKey(this.languageList, key);
|
|
1862
|
-
return language.label;
|
|
1901
|
+
return (_a = language === null || language === void 0 ? void 0 : language.label) !== null && _a !== void 0 ? _a : 'Select Language';
|
|
1863
1902
|
}
|
|
1864
1903
|
}
|
|
1865
1904
|
|
|
@@ -1870,6 +1909,7 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
1870
1909
|
class VegaRTELanguageExtension extends VegaRTEExtension {
|
|
1871
1910
|
constructor(languageList, languagesState) {
|
|
1872
1911
|
super();
|
|
1912
|
+
this.languageToolbarButtonRenderer = null;
|
|
1873
1913
|
this.languageState = {
|
|
1874
1914
|
selectedLanguage: '',
|
|
1875
1915
|
contentMap: {},
|
|
@@ -1887,24 +1927,39 @@ class VegaRTELanguageExtension extends VegaRTEExtension {
|
|
|
1887
1927
|
this.languageState.selectedLanguage = selectedLanguage;
|
|
1888
1928
|
this.applyLanguageContent(selectedLanguage, this.languageState.contentMap);
|
|
1889
1929
|
};
|
|
1930
|
+
this.languageList = languageList;
|
|
1890
1931
|
if (languagesState) {
|
|
1891
1932
|
this.languageState = Object.assign(Object.assign({}, this.languageState), languagesState);
|
|
1892
1933
|
}
|
|
1893
1934
|
if (!this.languageState.selectedLanguage && languageList.length > 0) {
|
|
1894
1935
|
this.languageState.selectedLanguage = languageList[0].key;
|
|
1895
1936
|
}
|
|
1896
|
-
|
|
1897
|
-
|
|
1937
|
+
}
|
|
1938
|
+
/**
|
|
1939
|
+
* Called by the rich text editor during `componentWillLoad` (before the first render).
|
|
1940
|
+
* Creates a fresh {@link RTELanguageToolbarButtonRenderer} instance dedicated to this
|
|
1941
|
+
* host element and registers it in the per-host map inside {@link RTEDTORendererManager}.
|
|
1942
|
+
* This ensures that each editor on the page has its own isolated renderer — no shared
|
|
1943
|
+
* singleton state, no WeakMap indirection.
|
|
1944
|
+
*
|
|
1945
|
+
* @typedef HTMLVegaRichTextEditorElement - The type of the host rich text editor element.
|
|
1946
|
+
* @param {HTMLVegaRichTextEditorElement} host - The host rich text editor element.
|
|
1947
|
+
*/
|
|
1948
|
+
prepareBeforeLoad(host) {
|
|
1949
|
+
this.languageToolbarButtonRenderer = new RTELanguageToolbarButtonRenderer(this.languageList, this.languageChangeCallBack, this.languageState.selectedLanguage);
|
|
1950
|
+
this.registerToolbarButtonRenderer('languages', this.languageToolbarButtonRenderer, host);
|
|
1898
1951
|
}
|
|
1899
1952
|
/**
|
|
1900
1953
|
* Initializes the language extension.
|
|
1901
|
-
* Applies the content for the selected language upon initialization.
|
|
1902
1954
|
*
|
|
1903
1955
|
* @param {RTEExtensionContext} context The extension context.
|
|
1904
1956
|
*/
|
|
1905
|
-
|
|
1906
|
-
super.
|
|
1957
|
+
initialExtensionAfterLoad(context) {
|
|
1958
|
+
super.initialExtensionAfterLoad(context);
|
|
1907
1959
|
const { selectedLanguage, contentMap } = this.languageState;
|
|
1960
|
+
if (this.languageToolbarButtonRenderer) {
|
|
1961
|
+
this.languageToolbarButtonRenderer.setSelectedLanguage(selectedLanguage);
|
|
1962
|
+
}
|
|
1908
1963
|
if (contentMap && contentMap[selectedLanguage]) {
|
|
1909
1964
|
this.applyLanguageContent(this.languageState.selectedLanguage, this.languageState.contentMap);
|
|
1910
1965
|
}
|
|
@@ -1916,7 +1971,9 @@ class VegaRTELanguageExtension extends VegaRTEExtension {
|
|
|
1916
1971
|
*/
|
|
1917
1972
|
setState(state) {
|
|
1918
1973
|
const { selectedLanguage, contentMap } = state;
|
|
1919
|
-
this.languageToolbarButtonRenderer
|
|
1974
|
+
if (this.languageToolbarButtonRenderer) {
|
|
1975
|
+
this.languageToolbarButtonRenderer.setSelectedLanguage(selectedLanguage);
|
|
1976
|
+
}
|
|
1920
1977
|
this.languageState.selectedLanguage = selectedLanguage;
|
|
1921
1978
|
this.languageState.contentMap = Object.assign({}, contentMap);
|
|
1922
1979
|
this.applyLanguageContent(selectedLanguage, contentMap);
|
|
@@ -7415,10 +7472,10 @@ class VegaRTETableExtension extends VegaRTEExtension {
|
|
|
7415
7472
|
*
|
|
7416
7473
|
* @param {RTEExtensionContext} context - extension context
|
|
7417
7474
|
*/
|
|
7418
|
-
|
|
7475
|
+
initialExtensionAfterLoad(context) {
|
|
7419
7476
|
this.tableSelection.init(context);
|
|
7420
7477
|
const tableExtensionContext = Object.assign(Object.assign({}, context), { tableSelection: this.tableSelection });
|
|
7421
|
-
super.
|
|
7478
|
+
super.initialExtensionAfterLoad(tableExtensionContext);
|
|
7422
7479
|
}
|
|
7423
7480
|
/**
|
|
7424
7481
|
* @inheritDoc
|
|
@@ -69,15 +69,24 @@ class VegaBannerRenderer extends globalSlimmerRegistry.VegaSlimmer {
|
|
|
69
69
|
* @returns {HTMLElement} the banner content element
|
|
70
70
|
*/
|
|
71
71
|
renderBannerContent() {
|
|
72
|
+
const hasContentSlot = this.hasContentSlot();
|
|
72
73
|
return (index.h("div", { class: {
|
|
73
74
|
['banner-content-container']: true,
|
|
74
|
-
['linear']: !this.isMobileDevice && (!this.content || !this.bannerTitle),
|
|
75
|
+
['linear']: !this.isMobileDevice && ((!this.content && !hasContentSlot) || !this.bannerTitle),
|
|
75
76
|
} },
|
|
76
77
|
this.renderBannerTitle(),
|
|
77
78
|
index.h("div", { class: "banner-content" },
|
|
78
|
-
index.h("vega-font", { variant: this.isMobileDevice ? 'font-footnote1-long' : 'font-p2-short', color: this.type === 'error' ? 'text-primary' : 'text-black' }, this.content),
|
|
79
|
+
hasContentSlot ? (index.h("slot", { name: "content" })) : (index.h("vega-font", { variant: this.isMobileDevice ? 'font-footnote1-long' : 'font-p2-short', color: this.type === 'error' ? 'text-primary' : 'text-black' }, this.content)),
|
|
79
80
|
this.isMobileDevice ? null : this.actionButtonRenderer.render())));
|
|
80
81
|
}
|
|
82
|
+
/**
|
|
83
|
+
* Checks whether the host element contains a slotted element targeting the "content" slot.
|
|
84
|
+
*
|
|
85
|
+
* @returns {boolean} `true` if a child element with `slot="content"` exists, `false` otherwise.
|
|
86
|
+
*/
|
|
87
|
+
hasContentSlot() {
|
|
88
|
+
return this.host.querySelector('[slot="content"]') !== null;
|
|
89
|
+
}
|
|
81
90
|
/**
|
|
82
91
|
* Get banner title element by property
|
|
83
92
|
*
|
|
@@ -292,6 +301,8 @@ const VegaBanner = class {
|
|
|
292
301
|
this.bannerTitle = '';
|
|
293
302
|
/**
|
|
294
303
|
* Specifies the content displayed within the banner.
|
|
304
|
+
* Also supports slot-based content: place a child element with `slot="content"` inside
|
|
305
|
+
* the banner to render rich HTML content. The slot takes precedence over this property.
|
|
295
306
|
*
|
|
296
307
|
* @vegaVersion 2.8.0
|
|
297
308
|
*/
|
|
@@ -96,7 +96,7 @@ __decorate$2([
|
|
|
96
96
|
globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
|
|
97
97
|
], VegaCheckboxShowErrorController.prototype, "disconnectedCallback", null);
|
|
98
98
|
|
|
99
|
-
const vegaCheckboxCss = ":host{display:inline-block;vertical-align:middle}.vega-checkbox-container{position:relative;display:flex;-webkit-tap-highlight-color:transparent}.vega-checkbox-container>input[type=checkbox]{position:absolute;left:0px;top:0px;opacity:0;width:24px;height:24px;padding:0px;margin:0px}.vega-checkbox-container>.vega-checkbox-icon{display:inline-block;box-sizing:border-box;width:24px;height:24px;border-style:solid;border-width:2px;border-color:rgba(var(--v-border-color-action-active, 29, 65, 195, 1));position:relative;left:0px;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));border-radius:4px;min-width:24px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1))}.vega-checkbox-container>.vega-checkbox-icon:hover{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1))}:host(.checked) .vega-checkbox-container>.vega-checkbox-icon{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1))}:host(.checked) .vega-checkbox-container>.vega-checkbox-icon:hover{background-color:rgba(var(--v-bg-action-hover, 4, 112, 236, 1))}.vega-checkbox-container>input[type=checkbox]:focus-visible+.vega-checkbox-icon{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px}.vega-checkbox-container>.vega-checkbox-icon:active{border-width:1px;border-style:solid;border-color:rgba(var(--v-border-color-action-active, 29, 65, 195, 1))}:host(.checked) .vega-checkbox-container>.vega-checkbox-icon:active{background-color:rgba(var(--v-bg-action-active, 29, 65, 195, 1))}:host(.
|
|
99
|
+
const vegaCheckboxCss = ":host{display:inline-block;vertical-align:middle}.vega-checkbox-container{position:relative;display:flex;-webkit-tap-highlight-color:transparent}.vega-checkbox-container>input[type=checkbox]{position:absolute;left:0px;top:0px;opacity:0;width:24px;height:24px;padding:0px;margin:0px}.vega-checkbox-container>.vega-checkbox-icon{display:inline-block;box-sizing:border-box;width:24px;height:24px;border-style:solid;border-width:2px;border-color:rgba(var(--v-border-color-action-active, 29, 65, 195, 1));position:relative;left:0px;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));border-radius:4px;min-width:24px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1))}.vega-checkbox-container>.vega-checkbox-icon:hover{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1))}:host(.checked) .vega-checkbox-container>.vega-checkbox-icon,:host(.indeterminate) .vega-checkbox-container>.vega-checkbox-icon{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1));display:inline-flex;align-items:center;justify-content:center}:host(.checked) .vega-checkbox-container>.vega-checkbox-icon:hover,:host(.indeterminate) .vega-checkbox-container>.vega-checkbox-icon:hover{background-color:rgba(var(--v-bg-action-hover, 4, 112, 236, 1))}.vega-checkbox-container>input[type=checkbox]:focus-visible+.vega-checkbox-icon{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px}.vega-checkbox-container>.vega-checkbox-icon:active{border-width:1px;border-style:solid;border-color:rgba(var(--v-border-color-action-active, 29, 65, 195, 1))}:host(.checked) .vega-checkbox-container>.vega-checkbox-icon:active,:host(.indeterminate) .vega-checkbox-container>.vega-checkbox-icon:active{background-color:rgba(var(--v-bg-action-active, 29, 65, 195, 1))}:host(.disabled) .vega-checkbox-container{cursor:not-allowed}:host(:not(.disabled)) .vega-checkbox-container{cursor:pointer}.vega-checkbox-container .vega-require{color:rgba(var(--v-text-error, 189, 41, 71, 1));margin-left:4px;vertical-align:middle}.vega-checkbox-container.error>.vega-checkbox-icon{background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field-danger, 230, 50, 87, 1))}:host(.checked) .vega-checkbox-container.error>.vega-checkbox-icon,:host(.indeterminate) .vega-checkbox-container.error>.vega-checkbox-icon{background-color:rgba(var(--v-bg-danger, 189, 41, 71, 1))}.vega-checkbox-container.error>.vega-checkbox-icon:hover{border:1px solid rgba(var(--v-border-input-field-danger-hover, 255, 87, 114, 1))}:host(.checked) .vega-checkbox-container.error>.vega-checkbox-icon:hover,:host(.indeterminate) .vega-checkbox-container.error>.vega-checkbox-icon:hover{background-color:rgba(var(--v-bg-danger-hover, 233, 71, 104, 1))}.vega-checkbox-container.error>input[type=checkbox]:focus-visible+.vega-checkbox-icon{outline:2px solid rgba(var(--v-border-color-danger, 230, 50, 87, 1));outline-offset:3px}:host(.checked) .vega-checkbox-container.error>.vega-checkbox-icon:active,:host(.indeterminate) .vega-checkbox-container.error>.vega-checkbox-icon:active{background-color:rgba(var(--v-bg-danger-active, 230, 50, 87, 1))}.vega-checkbox-container.error>.vega-checkbox-icon:active{border-width:1px;border-style:solid;border-color:rgba(var(--v-border-color-danger-active, 189, 41, 71, 1))}:host(.disabled) .vega-checkbox-container>.vega-checkbox-icon{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1))}:host(.checked.disabled) .vega-checkbox-container>.vega-checkbox-icon,:host(.indeterminate.disabled) .vega-checkbox-container>.vega-checkbox-icon{background-color:rgba(var(--v-bg-disabled, 176, 180, 181, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1))}:host(.checked.disabled) .vega-checkbox-container>.vega-checkbox-icon>vega-icon,:host(.indeterminate.disabled) .vega-checkbox-container>.vega-checkbox-icon>vega-icon{color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1))}.vega-checkbox-container>.vega-checkbox-label-container{display:inline-block;margin-left:12px;color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){.vega-checkbox-container>.vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.vega-checkbox-container>.vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.vega-checkbox-container>.vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host(.disabled) .vega-checkbox-container>.vega-checkbox-label-container{color:rgba(var(--v-text-disabled, 176, 180, 181, 1))}.vega-error{display:block;margin-top:12px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-error, 189, 41, 71, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}.vega-checkbox-label-container.vega-hidden{display:none}.vega-hidden{display:none}.size-default input[type=checkbox]{width:24px;height:24px}.size-default .vega-checkbox-icon{width:24px;height:24px;min-width:24px;border-radius:4px}.size-default .vega-checkbox-label-container{margin-left:12px;font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){.size-default .vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.size-default .vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.size-default .vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}.size-small input[type=checkbox]{width:16px;height:16px}.size-small .vega-checkbox-icon{width:16px;height:16px;min-width:16px;border-radius:2px}.size-small .vega-checkbox-label-container{margin-left:8px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){.size-small .vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.size-small .vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.size-small .vega-checkbox-label-container{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}";
|
|
100
100
|
|
|
101
101
|
var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
102
102
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
@@ -176,6 +176,21 @@ const VegaCheckbox = class {
|
|
|
176
176
|
* @vegaVersion 1.0.7
|
|
177
177
|
*/
|
|
178
178
|
this.checked = false;
|
|
179
|
+
/**
|
|
180
|
+
* Specifies whether the checkbox is in an indeterminate state.
|
|
181
|
+
*
|
|
182
|
+
* The indeterminate state is a visual-only state typically used to represent
|
|
183
|
+
* a checkbox whose value is neither fully checked nor fully unchecked,
|
|
184
|
+
* such as a "select all" control where only some children are selected.
|
|
185
|
+
*
|
|
186
|
+
* Setting this property does not affect the `checked` or `value` properties.
|
|
187
|
+
* User interaction (clicking) will clear the indeterminate state and
|
|
188
|
+
* toggle `checked` as usual.
|
|
189
|
+
*
|
|
190
|
+
* @vegaVersion 2.83.0
|
|
191
|
+
*/
|
|
192
|
+
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
193
|
+
this.indeterminate = false;
|
|
179
194
|
/**
|
|
180
195
|
* Specifies whether the checkbox element is disabled.
|
|
181
196
|
*
|
|
@@ -203,11 +218,14 @@ const VegaCheckbox = class {
|
|
|
203
218
|
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
204
219
|
this.isValid = null;
|
|
205
220
|
/**
|
|
206
|
-
*
|
|
221
|
+
* Indeterminate-clearing behavior is unit-tested.
|
|
222
|
+
* The checked-state side of this method is e2e-test covered in
|
|
207
223
|
* @see{module:vega-checkbox-change}
|
|
208
224
|
*/
|
|
209
|
-
/* istanbul ignore next */
|
|
210
225
|
this.onCheckBoxChange = (e) => {
|
|
226
|
+
if (this.indeterminate) {
|
|
227
|
+
this.indeterminate = false;
|
|
228
|
+
}
|
|
211
229
|
this.checked = e.currentTarget.checked;
|
|
212
230
|
};
|
|
213
231
|
this.onSelectedIconClick = (e) => {
|
|
@@ -234,6 +252,7 @@ const VegaCheckbox = class {
|
|
|
234
252
|
if (this.host.innerHTML.trim() === '') {
|
|
235
253
|
this.labelElement.classList.add('vega-hidden');
|
|
236
254
|
}
|
|
255
|
+
this.syncNativeIndeterminate();
|
|
237
256
|
}
|
|
238
257
|
/**
|
|
239
258
|
* Invoke this method to set the value of the checkbox.
|
|
@@ -252,14 +271,18 @@ const VegaCheckbox = class {
|
|
|
252
271
|
return component.sanitizeVegaComponent(index.h(index.Host, { class: {
|
|
253
272
|
'vega-flex-shrink-0 v-min-w-min': isInsideCheckboxGroup,
|
|
254
273
|
'checked': this.checked,
|
|
274
|
+
'indeterminate': this.indeterminate,
|
|
255
275
|
'disabled': this.isDisabled(),
|
|
256
276
|
} }, index.h("label", { class: ui.arrayToClassString([
|
|
257
277
|
'vega-checkbox-container',
|
|
258
278
|
this.showError && 'error',
|
|
259
279
|
this.size && `size-${this.size}`,
|
|
260
|
-
]), ref: (e) => (this.inputContainerRef = e) }, index.h("input", { ref: (e) => (this.inputRef = e), type: "checkbox", checked: this.checked, value: this.identifier, onChange: this.onCheckBoxChange, "aria-label": this.identifier || 'No label defined', disabled: this.isDisabled(),
|
|
280
|
+
]), ref: (e) => (this.inputContainerRef = e) }, index.h("input", { ref: (e) => (this.inputRef = e), type: "checkbox", checked: this.checked, value: this.identifier, onChange: this.onCheckBoxChange, "aria-label": this.identifier || 'No label defined', "aria-checked": this.indeterminate ? 'mixed' : undefined, disabled: this.isDisabled(), tabIndex: 0, onKeyDown: accessibility.createEnterKeyHandlerToTriggerClick() }), index.h("span", { class: "vega-checkbox-icon", onClick: this.onSelectedIconClick, tabIndex: -1 }, this.renderIconDom()), index.h("div", { class: "vega-checkbox-label-container", ref: (el) => (this.labelElement = el) }, this.renderLabelDom(), this.renderRequireDom()))), this.host);
|
|
261
281
|
}
|
|
262
282
|
renderIconDom() {
|
|
283
|
+
if (this.indeterminate) {
|
|
284
|
+
return index.h("vega-icon", { icon: "minus-sign", size: this.size === 'small' ? 'size-12' : 'size-16' });
|
|
285
|
+
}
|
|
263
286
|
return this.checked ? (index.h("vega-icon", { icon: "checkmark", size: this.size === 'small' ? 'size-12' : 'size-16' })) : null;
|
|
264
287
|
}
|
|
265
288
|
renderLabelDom() {
|
|
@@ -273,6 +296,16 @@ const VegaCheckbox = class {
|
|
|
273
296
|
initValue() {
|
|
274
297
|
this.value = this.identifier !== '' ? (this.checked ? this.identifier : '') : this.checked;
|
|
275
298
|
}
|
|
299
|
+
/**
|
|
300
|
+
* Syncs the indeterminate property to the native input element.
|
|
301
|
+
* The HTML `indeterminate` attribute can only be set via JavaScript,
|
|
302
|
+
* so it must be applied imperatively after each render.
|
|
303
|
+
*/
|
|
304
|
+
syncNativeIndeterminate() {
|
|
305
|
+
if (this.inputRef) {
|
|
306
|
+
this.inputRef.indeterminate = this.indeterminate;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
276
309
|
/**
|
|
277
310
|
* indicating whether the component is disabled or not, single checkbox will take the self disabled value and the checkbox in group will take the self disabled and group disabled value
|
|
278
311
|
*
|
|
@@ -30,7 +30,7 @@ const eventEmitSlimmer = require('./event-emit-slimmer-bcb458b2.js');
|
|
|
30
30
|
const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-9b7095a4.js');
|
|
31
31
|
const translationSlimmer = require('./translation-slimmer-d0c77ad2.js');
|
|
32
32
|
const dynamicSlimmer = require('./dynamic-slimmer-f31fdfd7.js');
|
|
33
|
-
const elementAppenderSlimmer = require('./element-appender-slimmer-
|
|
33
|
+
const elementAppenderSlimmer = require('./element-appender-slimmer-52c2b455.js');
|
|
34
34
|
const synchronizeTaskQueue = require('./synchronize-task-queue-1ee80e94.js');
|
|
35
35
|
const clickOutsideOnlyToDismissStrategy = require('./click-outside-only-to-dismiss-strategy-407f6d1e.js');
|
|
36
36
|
const ariaDialogFocusableTrapSlimmer = require('./aria-dialog-focusable-trap-slimmer-5507f917.js');
|
|
@@ -18,6 +18,8 @@ const eventEmitSlimmer = require('./event-emit-slimmer-bcb458b2.js');
|
|
|
18
18
|
const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-9b7095a4.js');
|
|
19
19
|
const componentGlobalStyleSlimmer = require('./component-global-style-slimmer-93c5fb50.js');
|
|
20
20
|
const deprecatedPropertySlimmer = require('./deprecated-property-slimmer-300a3929.js');
|
|
21
|
+
const mutationObserverSlimmer = require('./mutation-observer-slimmer-749d5020.js');
|
|
22
|
+
const mutationObserverFilters = require('./mutation-observer-filters-38cebc6d.js');
|
|
21
23
|
const misc = require('./misc-3d30df91.js');
|
|
22
24
|
const accessibility = require('./accessibility-bfa227f6.js');
|
|
23
25
|
const ui = require('./ui-32120990.js');
|
|
@@ -37,9 +39,10 @@ require('./vega-env-manager-23b8b23c.js');
|
|
|
37
39
|
require('./vega-nonce-manager-df69d3ed.js');
|
|
38
40
|
require('./index-592b4052.js');
|
|
39
41
|
require('./object-b53e9416.js');
|
|
42
|
+
require('./array-249289f2.js');
|
|
43
|
+
require('./number-4816603d.js');
|
|
40
44
|
require('./synchronize-task-queue-1ee80e94.js');
|
|
41
45
|
require('./vega-internal-event-id-87014e4f.js');
|
|
42
|
-
require('./number-4816603d.js');
|
|
43
46
|
|
|
44
47
|
const vegaDialogCss = ":host vega-modal{padding-left:16px;padding-right:16px}@media (min-width: 768px){:host vega-modal{padding:0px}}:host .vega-dialog-actions-container{display:flex;justify-content:center;flex-direction:column;gap:12px}@media (min-width: 768px){:host .vega-dialog-actions-container{justify-content:flex-end;flex-direction:row}}:host .vega-dialog-modal-content{font-family:\"Inter\", sans-serif;font-size:18px;font-weight:500;line-height:30px;letter-spacing:0px;color:rgba(var(--v-text-primary, 32, 54, 69, 1));word-break:break-word}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-dialog-modal-content{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:28px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-dialog-modal-content{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:28px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-dialog-modal-content{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:28px;letter-spacing:0px}}";
|
|
45
48
|
|
|
@@ -185,7 +188,20 @@ var __decorate$8 = (undefined && undefined.__decorate) || function (decorators,
|
|
|
185
188
|
/**
|
|
186
189
|
* Nested modal controller
|
|
187
190
|
*/
|
|
188
|
-
class VegaNestedModalController extends
|
|
191
|
+
class VegaNestedModalController extends mutationObserverSlimmer.MutationObserverSlimmer {
|
|
192
|
+
constructor() {
|
|
193
|
+
super({
|
|
194
|
+
mutationFilter: mutationObserverFilters.TagNameMutationFilter('VEGA-MODAL'),
|
|
195
|
+
options: {
|
|
196
|
+
childList: true,
|
|
197
|
+
subtree: true,
|
|
198
|
+
},
|
|
199
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
200
|
+
callback: () => {
|
|
201
|
+
this.appendNestedModalToBody();
|
|
202
|
+
},
|
|
203
|
+
});
|
|
204
|
+
}
|
|
189
205
|
/**
|
|
190
206
|
* Component lifecycle - [connectedCallback]
|
|
191
207
|
*/
|
|
@@ -889,18 +905,23 @@ class VegaModalBackdropController extends globalSlimmerRegistry.VegaSlimmer {
|
|
|
889
905
|
* Set backdrop of modal.
|
|
890
906
|
*/
|
|
891
907
|
setBackdrop() {
|
|
908
|
+
var _a;
|
|
892
909
|
if (this.backdrop === 'none')
|
|
893
910
|
return;
|
|
894
911
|
// eslint-disable-next-line no-restricted-globals
|
|
895
|
-
let backdrop = document.querySelector(
|
|
912
|
+
let backdrop = document.querySelector(`vega-backdrop.${VegaModalBackdropController.modalBackdropClass}`);
|
|
896
913
|
if (!backdrop) {
|
|
897
914
|
// eslint-disable-next-line no-restricted-globals
|
|
898
915
|
backdrop = document.createElement('vega-backdrop');
|
|
899
|
-
backdrop.classList.add(
|
|
916
|
+
backdrop.classList.add(VegaModalBackdropController.modalBackdropClass);
|
|
900
917
|
backdrop.color = VegaModalBackdropController.backdropColorMap[this.backdropColor];
|
|
901
918
|
backdrop.visible = true;
|
|
919
|
+
// Append backdrop as a sibling of the modal host so it shares the same stacking context.
|
|
920
|
+
// - When vega-modal is in document.body (normal case), parentElement is document.body.
|
|
921
|
+
// - When vega-modal is inside a third-party dialog (e.g. Bootstrap modal), parentElement is the dialog container — keeping the backdrop inside the focus-trap root.
|
|
922
|
+
// - Falls back to document.body when parentElement is null (e.g. VegaDialog creates the vega-modal element before appending it to the DOM).
|
|
902
923
|
// eslint-disable-next-line no-restricted-globals
|
|
903
|
-
document.
|
|
924
|
+
((_a = this.host.parentElement) !== null && _a !== void 0 ? _a : document.body).append(backdrop);
|
|
904
925
|
}
|
|
905
926
|
this.backdropRef = backdrop;
|
|
906
927
|
}
|
|
@@ -911,6 +932,7 @@ class VegaModalBackdropController extends globalSlimmerRegistry.VegaSlimmer {
|
|
|
911
932
|
this.backdropRef && this.backdropRef.remove();
|
|
912
933
|
}
|
|
913
934
|
}
|
|
935
|
+
VegaModalBackdropController.modalBackdropClass = 'vega-modal-backdrop';
|
|
914
936
|
VegaModalBackdropController.backdropColorMap = {
|
|
915
937
|
default: 'bg-backdrop-modal',
|
|
916
938
|
semi: 'bg-backdrop-popover',
|
|
@@ -14,7 +14,7 @@ const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-facto
|
|
|
14
14
|
const vegaEventId = require('./vega-event-id-c08ce3d3.js');
|
|
15
15
|
const keyboardManagerSlimmer = require('./keyboard-manager-slimmer-879ff4f3.js');
|
|
16
16
|
const dynamicSlimmer = require('./dynamic-slimmer-f31fdfd7.js');
|
|
17
|
-
const elementAppenderSlimmer = require('./element-appender-slimmer-
|
|
17
|
+
const elementAppenderSlimmer = require('./element-appender-slimmer-52c2b455.js');
|
|
18
18
|
const ariaDialogFocusableTrapSlimmer = require('./aria-dialog-focusable-trap-slimmer-5507f917.js');
|
|
19
19
|
const index$1 = require('./index-592b4052.js');
|
|
20
20
|
const array = require('./array-249289f2.js');
|
|
@@ -11,9 +11,9 @@ exports.FrameworkEnum = void 0;
|
|
|
11
11
|
/** The VegaEnvManager class manages vega environment parameters. */
|
|
12
12
|
class VegaEnvManager {
|
|
13
13
|
constructor() {
|
|
14
|
-
// The `2.
|
|
14
|
+
// The `2.83.0` will be replaced to a version string when running publish script.
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-magic-numbers
|
|
16
|
-
this.vegaVersion = '2.
|
|
16
|
+
this.vegaVersion = '2.83.0';
|
|
17
17
|
this.framework = exports.FrameworkEnum.VanillaJs;
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
@@ -58,7 +58,7 @@ class PageSelectorMobileRenderer extends globalSlimmerRegistry.VegaSlimmer {
|
|
|
58
58
|
index.h("vega-form", { ref: (ref) => {
|
|
59
59
|
domNodeSubjectObserverFactory.DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, vegaEventId.VegaFormSubmit, this.handleChange);
|
|
60
60
|
} },
|
|
61
|
-
index.h("vega-input", { "data-vega-form": "pageSelectorMobile_goTo", size: "small", showClearIcon: false, style: { width: '54px' }, maskConfig: {
|
|
61
|
+
index.h("vega-input", { "data-vega-form": "pageSelectorMobile_goTo", size: "small", autocomplete: "on", showClearIcon: false, style: { width: '54px' }, maskConfig: {
|
|
62
62
|
type: 'number',
|
|
63
63
|
options: {
|
|
64
64
|
allowNegative: false,
|
|
@@ -60,7 +60,7 @@ const VegaPaginationGoTo = ({ onChange, pageCount, translationSlimmer, }) => {
|
|
|
60
60
|
ref: (ref) => {
|
|
61
61
|
domNodeSubjectObserverFactory.DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, vegaEventId.VegaFormSubmit, handleChange);
|
|
62
62
|
} },
|
|
63
|
-
index.h("vega-input", { "data-vega-form": "paginationGoTo", type: "number", size: "small", showClearIcon: false, style: { width: '60px' }, maskConfig: {
|
|
63
|
+
index.h("vega-input", { "data-vega-form": "paginationGoTo", type: "number", size: "small", autocomplete: "on", showClearIcon: false, style: { width: '60px' }, maskConfig: {
|
|
64
64
|
type: 'number',
|
|
65
65
|
options: {
|
|
66
66
|
allowNegative: false,
|
|
@@ -10,7 +10,7 @@ const componentUsageRuntimeMetrics = require('./component-usage-runtime-metrics-
|
|
|
10
10
|
const eventEmitSlimmer = require('./event-emit-slimmer-bcb458b2.js');
|
|
11
11
|
const vegaEventId = require('./vega-event-id-c08ce3d3.js');
|
|
12
12
|
const dynamicSlimmer = require('./dynamic-slimmer-f31fdfd7.js');
|
|
13
|
-
const elementAppenderSlimmer = require('./element-appender-slimmer-
|
|
13
|
+
const elementAppenderSlimmer = require('./element-appender-slimmer-52c2b455.js');
|
|
14
14
|
const remoteInvocationRegistry = require('./remote-invocation-registry-fc22fdd0.js');
|
|
15
15
|
const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-9110cb94.js');
|
|
16
16
|
const vegaInternalEventId = require('./vega-internal-event-id-87014e4f.js');
|
|
@@ -773,17 +773,16 @@ const VegaProgressTracker = class {
|
|
|
773
773
|
*/
|
|
774
774
|
this.canClickStep = true;
|
|
775
775
|
/**
|
|
776
|
-
* When enabled,
|
|
777
|
-
* no highlighted/current step (e.g. all steps are pending or
|
|
778
|
-
*
|
|
776
|
+
* When enabled, `current = -1` becomes a valid state that indicates
|
|
777
|
+
* no highlighted/current step (e.g. all steps are pending or the
|
|
778
|
+
* workflow has not started).
|
|
779
779
|
*
|
|
780
|
-
*
|
|
781
|
-
*
|
|
780
|
+
* Two ways to enter this state:
|
|
781
|
+
* - Set the `current` prop to `-1`.
|
|
782
|
+
* - Call the `setCurrent(-1)` method.
|
|
782
783
|
*
|
|
783
|
-
*
|
|
784
|
-
*
|
|
785
|
-
* by explicitly setting `current = -1` via the prop or
|
|
786
|
-
* `setCurrent(-1)`.
|
|
784
|
+
* @VegaHint `prevStep()` still clamps at `0` and will not take `current`
|
|
785
|
+
* into `-1`.
|
|
787
786
|
*
|
|
788
787
|
* @vegaVersion 2.82.0
|
|
789
788
|
*/
|
|
@@ -15,7 +15,7 @@ const accessibility = require('./accessibility-bfa227f6.js');
|
|
|
15
15
|
const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-9110cb94.js');
|
|
16
16
|
const vegaEventId = require('./vega-event-id-c08ce3d3.js');
|
|
17
17
|
const typeGuard = require('./type-guard-3ec852d7.js');
|
|
18
|
-
const dtoRendererManager = require('./dto-renderer-manager-
|
|
18
|
+
const dtoRendererManager = require('./dto-renderer-manager-7eb5c5ce.js');
|
|
19
19
|
const vegaInternalEventId = require('./vega-internal-event-id-87014e4f.js');
|
|
20
20
|
const tryGetDocument = require('./try-get-document-c0ebd39a.js');
|
|
21
21
|
const vegaNonceManager = require('./vega-nonce-manager-df69d3ed.js');
|