@sankhyalabs/ezui 7.1.7 → 7.1.9
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/ApplicationUtils-5cc05979.js.gz +0 -0
- package/dist/cjs/CSSVarsUtils-f20973d1.js.gz +0 -0
- package/dist/cjs/CheckMode-ecb90b87.js.gz +0 -0
- package/dist/cjs/DialogType-2114c337.js.gz +0 -0
- package/dist/cjs/EzScrollDirection-b2c99895.js.gz +0 -0
- package/dist/cjs/FocusResolver-885f2173.js.gz +0 -0
- package/dist/cjs/FormLayout-18853e70.js.gz +0 -0
- package/dist/cjs/RichToolbarHelper-ea12328f.js.gz +0 -0
- package/dist/cjs/_commonjsHelpers-537d719a.js.gz +0 -0
- package/dist/cjs/app-globals-2fbe4b17.js.gz +0 -0
- package/dist/cjs/constants-72b7e05e.js.gz +0 -0
- package/dist/cjs/ez-actions-button.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-alert-list.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-alert.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-application.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-avatar.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-badge.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-breadcrumb.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-button.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-calendar.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-card-item.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-chart.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-check.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-chip.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-classic-combo-box.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-classic-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-classic-text-area.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-collapsible-box.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-combo-box-list_4.cjs.entry.js +1 -1
- package/dist/cjs/ez-combo-box-list_4.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-combo-box.cjs.entry.js +5 -0
- package/dist/cjs/ez-combo-box.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-date-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-date-time-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-dialog.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-double-list.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-dropdown.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-empty-card.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-file-item.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-filter-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-form-view.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-form.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-grid-view.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-grid.cjs.entry.js +1 -1
- package/dist/cjs/ez-grid.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-guide-navigator.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-icon.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-link-builder_6.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-list-item.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-list.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-loading-bar.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-modal-container.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-modal.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-multi-selection-list.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-number-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-pagination.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-popover-core.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-popover-plus_3.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-popover.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-popup.cjs.entry.js +3 -3
- package/dist/cjs/ez-popup.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-progress-bar.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-radio-button.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-rich-toolbar-item.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-scroller_2.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-search-plus.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-search-result-list.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-search.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-sidebar-navigator.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-skeleton.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-sortable-list.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-spinner.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-split-button.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-split-item.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-split-panel.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tabselector.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tag-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tag.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-text-area.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-text-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tile-medium.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tile.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-time-input.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-toast.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tooltip.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-tree.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-underface.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-upload.cjs.entry.js.gz +0 -0
- package/dist/cjs/ez-view-stack.cjs.entry.js.gz +0 -0
- package/dist/cjs/ezListHelper-0d3970b4.js.gz +0 -0
- package/dist/cjs/ezui.cjs.js.gz +0 -0
- package/dist/cjs/filter-column.cjs.entry.js.gz +0 -0
- package/dist/cjs/floating-ui.dom.esm-f4d87617.js.gz +0 -0
- package/dist/cjs/index-1be40f19.js.gz +0 -0
- package/dist/cjs/index-a7b0c73d.js.gz +0 -0
- package/dist/cjs/index.cjs.js.gz +0 -0
- package/dist/cjs/loader.cjs.js.gz +0 -0
- package/dist/cjs/{purify-62aeacfa.js → purify-ca9603eb.js} +298 -51
- package/dist/cjs/purify-ca9603eb.js.gz +0 -0
- package/dist/cjs/search-column-316e2c59.js.gz +0 -0
- package/dist/cjs/searchFormatters-b7e1ed1e.js.gz +0 -0
- package/dist/collection/components/ez-actions-button/ez-actions-button.css.gz +0 -0
- package/dist/collection/components/ez-actions-button/ez-actions-button.js.gz +0 -0
- package/dist/collection/components/ez-alert/ez-alert.css.gz +0 -0
- package/dist/collection/components/ez-alert/ez-alert.js.gz +0 -0
- package/dist/collection/components/ez-alert-list/ez-alert-list.css.gz +0 -0
- package/dist/collection/components/ez-alert-list/ez-alert-list.js.gz +0 -0
- package/dist/collection/components/ez-application/ez-application.css.gz +0 -0
- package/dist/collection/components/ez-application/ez-application.js.gz +0 -0
- package/dist/collection/components/ez-avatar/ez-avatar.css.gz +0 -0
- package/dist/collection/components/ez-avatar/ez-avatar.js.gz +0 -0
- package/dist/collection/components/ez-badge/enum/sizes.js.gz +0 -0
- package/dist/collection/components/ez-badge/ez-badge.css.gz +0 -0
- package/dist/collection/components/ez-badge/ez-badge.js.gz +0 -0
- package/dist/collection/components/ez-badge/interfaces/IPosition.js.gz +0 -0
- package/dist/collection/components/ez-breadcrumb/ez-breadcrumb.css.gz +0 -0
- package/dist/collection/components/ez-breadcrumb/ez-breadcrumb.js.gz +0 -0
- package/dist/collection/components/ez-breadcrumb/subcomponents/breadcrumb-item.js.gz +0 -0
- package/dist/collection/components/ez-button/ez-button.css.gz +0 -0
- package/dist/collection/components/ez-button/ez-button.js.gz +0 -0
- package/dist/collection/components/ez-calendar/ez-calendar.css.gz +0 -0
- package/dist/collection/components/ez-calendar/ez-calendar.js.gz +0 -0
- package/dist/collection/components/ez-card-item/ez-card-item.css.gz +0 -0
- package/dist/collection/components/ez-card-item/ez-card-item.js.gz +0 -0
- package/dist/collection/components/ez-chart/components/BarChart.js.gz +0 -0
- package/dist/collection/components/ez-chart/components/ColumnChart.js.gz +0 -0
- package/dist/collection/components/ez-chart/components/DonutChart.js.gz +0 -0
- package/dist/collection/components/ez-chart/components/LineChart.js.gz +0 -0
- package/dist/collection/components/ez-chart/components/PieChart.js.gz +0 -0
- package/dist/collection/components/ez-chart/components/index.js.gz +0 -0
- package/dist/collection/components/ez-chart/ez-chart.css.gz +0 -0
- package/dist/collection/components/ez-chart/ez-chart.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartAxis.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartContext.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartOptions.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartSerie.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartStrategies.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartType.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/ChartTypeValue.js.gz +0 -0
- package/dist/collection/components/ez-chart/interfaces/index.js.gz +0 -0
- package/dist/collection/components/ez-chart/test/mock-chart.js.gz +0 -0
- package/dist/collection/components/ez-chart/types/BaseHighChartsRender.js.gz +0 -0
- package/dist/collection/components/ez-check/CheckMode.js.gz +0 -0
- package/dist/collection/components/ez-check/ez-check.css.gz +0 -0
- package/dist/collection/components/ez-check/ez-check.js.gz +0 -0
- package/dist/collection/components/ez-chip/ez-chip.css.gz +0 -0
- package/dist/collection/components/ez-chip/ez-chip.js.gz +0 -0
- package/dist/collection/components/ez-classic-combo-box/ez-classic-combo-box.css.gz +0 -0
- package/dist/collection/components/ez-classic-combo-box/ez-classic-combo-box.js.gz +0 -0
- package/dist/collection/components/ez-classic-combo-box/interfaces/IOption.js.gz +0 -0
- package/dist/collection/components/ez-classic-input/ez-classic-input.css.gz +0 -0
- package/dist/collection/components/ez-classic-input/ez-classic-input.js.gz +0 -0
- package/dist/collection/components/ez-classic-input/interfaces/optionsSetFocus.js.gz +0 -0
- package/dist/collection/components/ez-classic-input/utils/maskFormatter.js.gz +0 -0
- package/dist/collection/components/ez-classic-text-area/ez-classic-text-area.css.gz +0 -0
- package/dist/collection/components/ez-classic-text-area/ez-classic-text-area.js.gz +0 -0
- package/dist/collection/components/ez-classic-text-area/interfaces/optionsSetFocus.js.gz +0 -0
- package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css.gz +0 -0
- package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.js.gz +0 -0
- package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.css.gz +0 -0
- package/dist/collection/components/ez-combo-box/ez-combo-box-list/ez-combo-box-list.js.gz +0 -0
- package/dist/collection/components/ez-combo-box/ez-combo-box.css.gz +0 -0
- package/dist/collection/components/ez-combo-box/ez-combo-box.js +5 -0
- package/dist/collection/components/ez-combo-box/ez-combo-box.js.gz +0 -0
- package/dist/collection/components/ez-date-input/ez-date-input.css.gz +0 -0
- package/dist/collection/components/ez-date-input/ez-date-input.js.gz +0 -0
- package/dist/collection/components/ez-date-time-input/ez-date-time-input.css.gz +0 -0
- package/dist/collection/components/ez-date-time-input/ez-date-time-input.js.gz +0 -0
- package/dist/collection/components/ez-dialog/DialogType.js.gz +0 -0
- package/dist/collection/components/ez-dialog/ez-dialog.css.gz +0 -0
- package/dist/collection/components/ez-dialog/ez-dialog.js.gz +0 -0
- package/dist/collection/components/ez-double-list/doubleListHelper.js.gz +0 -0
- package/dist/collection/components/ez-double-list/ez-double-list.css.gz +0 -0
- package/dist/collection/components/ez-double-list/ez-double-list.js.gz +0 -0
- package/dist/collection/components/ez-dropdown/ez-dropdown.css.gz +0 -0
- package/dist/collection/components/ez-dropdown/ez-dropdown.js.gz +0 -0
- package/dist/collection/components/ez-dropdown/structure/DropdownItem.js.gz +0 -0
- package/dist/collection/components/ez-dropdown/structure/SubmenuControl.js.gz +0 -0
- package/dist/collection/components/ez-empty-card/ez-empty-card.css.gz +0 -0
- package/dist/collection/components/ez-empty-card/ez-empty-card.js.gz +0 -0
- package/dist/collection/components/ez-file-item/ez-file-item.css.gz +0 -0
- package/dist/collection/components/ez-file-item/ez-file-item.js.gz +0 -0
- package/dist/collection/components/ez-filter-input/ez-filter-input.css.gz +0 -0
- package/dist/collection/components/ez-filter-input/ez-filter-input.js.gz +0 -0
- package/dist/collection/components/ez-form/ez-form.css.gz +0 -0
- package/dist/collection/components/ez-form/ez-form.js.gz +0 -0
- package/dist/collection/components/ez-form/store/form.slice.js.gz +0 -0
- package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js.gz +0 -0
- package/dist/collection/components/ez-form-view/ez-form-view.css.gz +0 -0
- package/dist/collection/components/ez-form-view/ez-form-view.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/RichText.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInputPlus.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-form-view/interfaces/IFormViewField.js.gz +0 -0
- package/dist/collection/components/ez-form-view/interfaces/index.js.gz +0 -0
- package/dist/collection/components/ez-form-view/structure/index.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/EzGridController.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/DataSourceInterceptor.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/GridEditionManager.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellEditor.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomCellRender.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/cellRendererStatus.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/selectionHeader.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/test/constants/EzGridCustomCellEditorConstants.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/components/test/constants/EzGridCustomCellRenderConstants.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellEditor.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/EzCellRender.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/GridEditorUtils.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/IEditorMetadata.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/IUICellEditor.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/IUICellRender.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/ComboBox.tpl.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/DateInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/NumberInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/Search.tpl.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/SearchPlus.tpl.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/editor/templates/TextInput.tpl.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/mock/Server.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/test/constants/GridEditionMock.js.gz +0 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/utils/buildLocaleText.js.gz +0 -0
- package/dist/collection/components/ez-grid/ez-grid.css.gz +0 -0
- package/dist/collection/components/ez-grid/ez-grid.js.gz +0 -0
- package/dist/collection/components/ez-grid/interfaces/IColumnFilter.js.gz +0 -0
- package/dist/collection/components/ez-grid/interfaces/ICustomFormatter.js.gz +0 -0
- package/dist/collection/components/ez-grid/interfaces/IGridMode.js.gz +0 -0
- package/dist/collection/components/ez-grid/interfaces/ISelection.js.gz +0 -0
- package/dist/collection/components/ez-grid/interfaces/ISelectionToastConfig.js.gz +0 -0
- package/dist/collection/components/ez-grid/interfaces/index.js.gz +0 -0
- package/dist/collection/components/ez-grid/subcomponents/filter-column.css.gz +0 -0
- package/dist/collection/components/ez-grid/subcomponents/filter-column.js.gz +0 -0
- package/dist/collection/components/ez-grid/subcomponents/selection-counter.js.gz +0 -0
- package/dist/collection/components/ez-grid/subcomponents/utils/selectionCounterUtils.js.gz +0 -0
- package/dist/collection/components/ez-grid/test/resources/gridDataUnit.js.gz +0 -0
- package/dist/collection/components/ez-grid/utils/ColumnFilterManager.js.gz +0 -0
- package/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource.js.gz +0 -0
- package/dist/collection/components/ez-grid/utils/index.js.gz +0 -0
- package/dist/collection/components/ez-grid-view/ez-grid-view.css.gz +0 -0
- package/dist/collection/components/ez-grid-view/ez-grid-view.js.gz +0 -0
- package/dist/collection/components/ez-guide-navigator/ez-guide-navigator.css.gz +0 -0
- package/dist/collection/components/ez-guide-navigator/ez-guide-navigator.js.gz +0 -0
- package/dist/collection/components/ez-guide-navigator/interfaces/IGuideItem.js.gz +0 -0
- package/dist/collection/components/ez-guide-navigator/interfaces/index.js.gz +0 -0
- package/dist/collection/components/ez-icon/ez-icon.css.gz +0 -0
- package/dist/collection/components/ez-icon/ez-icon.js.gz +0 -0
- package/dist/collection/components/ez-list/ez-list.css.gz +0 -0
- package/dist/collection/components/ez-list/ez-list.js.gz +0 -0
- package/dist/collection/components/ez-list/ezListHelper.js.gz +0 -0
- package/dist/collection/components/ez-list-item/ez-list-item.css.gz +0 -0
- package/dist/collection/components/ez-list-item/ez-list-item.js.gz +0 -0
- package/dist/collection/components/ez-loading-bar/ez-loading-bar.css.gz +0 -0
- package/dist/collection/components/ez-loading-bar/ez-loading-bar.js.gz +0 -0
- package/dist/collection/components/ez-modal/ez-modal.css.gz +0 -0
- package/dist/collection/components/ez-modal/ez-modal.js.gz +0 -0
- package/dist/collection/components/ez-modal-container/ez-modal-container.css.gz +0 -0
- package/dist/collection/components/ez-modal-container/ez-modal-container.js.gz +0 -0
- package/dist/collection/components/ez-modal-container/index.js.gz +0 -0
- package/dist/collection/components/ez-modal-container/modal-action.js.gz +0 -0
- package/dist/collection/components/ez-modal-container/modal-button-status.js.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.css.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource.js.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/interfaces/IMultiSelectionOption.js.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/interfaces/IStaticOptionsFetchConfig.js.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/subcomponents/multi-selection-box-message.css.gz +0 -0
- package/dist/collection/components/ez-multi-selection-list/subcomponents/multi-selection-box-message.js.gz +0 -0
- package/dist/collection/components/ez-number-input/ez-number-input.css.gz +0 -0
- package/dist/collection/components/ez-number-input/ez-number-input.js.gz +0 -0
- package/dist/collection/components/ez-pagination/ez-pagination.css.gz +0 -0
- package/dist/collection/components/ez-pagination/ez-pagination.js.gz +0 -0
- package/dist/collection/components/ez-popover/ez-popover.css.gz +0 -0
- package/dist/collection/components/ez-popover/ez-popover.js.gz +0 -0
- package/dist/collection/components/ez-popover-plus/ez-popover-plus.css.gz +0 -0
- package/dist/collection/components/ez-popover-plus/ez-popover-plus.js.gz +0 -0
- package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.css.gz +0 -0
- package/dist/collection/components/ez-popover-plus/subcomponent/ez-popover-core.js.gz +0 -0
- package/dist/collection/components/ez-popup/ez-popup.css.gz +0 -0
- package/dist/collection/components/ez-popup/ez-popup.js +3 -3
- package/dist/collection/components/ez-popup/ez-popup.js.gz +0 -0
- package/dist/collection/components/ez-popup/interfaces/EzButtonProps.js.gz +0 -0
- package/dist/collection/components/ez-progress-bar/ez-progress-bar.css.gz +0 -0
- package/dist/collection/components/ez-progress-bar/ez-progress-bar.js.gz +0 -0
- package/dist/collection/components/ez-radio-button/ez-radio-button.css.gz +0 -0
- package/dist/collection/components/ez-radio-button/ez-radio-button.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-link-builder/ez-link-builder.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-link-builder/ez-link-builder.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-text.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-text.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/RichToolbarHelper.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-arrows/ez-rich-toolbar-arrows.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-arrows/ez-rich-toolbar-arrows.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-configs/ez-rich-toolbar-configs.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-configs/ez-rich-toolbar-configs.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-item/ez-rich-toolbar-item.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-item/ez-rich-toolbar-item.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-letters/ez-rich-toolbar-letters.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar-letters/ez-rich-toolbar-letters.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-rich-toolbar/ez-rich-toolbar.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-simple-image-uploader/ez-simple-image-uploader.css.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-simple-image-uploader/ez-simple-image-uploader.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-simple-image-uploader/test/resource/imageBase64.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-simple-image-uploader/utils/fileToBase64.js.gz +0 -0
- package/dist/collection/components/ez-rich-text/ez-simple-image-uploader/utils/formatBytes.js.gz +0 -0
- package/dist/collection/components/ez-scroller/EzScrollDirection.js.gz +0 -0
- package/dist/collection/components/ez-scroller/ez-scroller.css.gz +0 -0
- package/dist/collection/components/ez-scroller/ez-scroller.js.gz +0 -0
- package/dist/collection/components/ez-search/ez-search.css.gz +0 -0
- package/dist/collection/components/ez-search/ez-search.js.gz +0 -0
- package/dist/collection/components/ez-search/subcomponent/search-list/search-list.css.gz +0 -0
- package/dist/collection/components/ez-search/subcomponent/search-list/search-list.js.gz +0 -0
- package/dist/collection/components/ez-search/utils/searchFormatters.js.gz +0 -0
- package/dist/collection/components/ez-search-plus/ez-search-plus.css.gz +0 -0
- package/dist/collection/components/ez-search-plus/ez-search-plus.js.gz +0 -0
- package/dist/collection/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.css.gz +0 -0
- package/dist/collection/components/ez-search-plus/subcomponent/ez-search-result-list/ez-search-result-list.js.gz +0 -0
- package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.css.gz +0 -0
- package/dist/collection/components/ez-sidebar-button/ez-sidebar-button.js.gz +0 -0
- package/dist/collection/components/ez-sidebar-navigator/ez-sidebar-navigator.css.gz +0 -0
- package/dist/collection/components/ez-sidebar-navigator/ez-sidebar-navigator.js.gz +0 -0
- package/dist/collection/components/ez-sidebar-navigator/interfaces/ModeMenuEnum.js.gz +0 -0
- package/dist/collection/components/ez-sidebar-navigator/interfaces/SizeMenuEnum.js.gz +0 -0
- package/dist/collection/components/ez-sidebar-navigator/interfaces/TypeMenuEnum.js.gz +0 -0
- package/dist/collection/components/ez-sidebar-navigator/interfaces/index.js.gz +0 -0
- package/dist/collection/components/ez-skeleton/ez-skeleton.constants.js.gz +0 -0
- package/dist/collection/components/ez-skeleton/ez-skeleton.css.gz +0 -0
- package/dist/collection/components/ez-skeleton/ez-skeleton.js.gz +0 -0
- package/dist/collection/components/ez-sortable-list/ez-sortable-list.css.gz +0 -0
- package/dist/collection/components/ez-sortable-list/ez-sortable-list.js.gz +0 -0
- package/dist/collection/components/ez-spinner/ez-spinner.css.gz +0 -0
- package/dist/collection/components/ez-spinner/ez-spinner.js.gz +0 -0
- package/dist/collection/components/ez-split-button/ez-split-button.css.gz +0 -0
- package/dist/collection/components/ez-split-button/ez-split-button.js.gz +0 -0
- package/dist/collection/components/ez-split-button/test/dropdownItems.js.gz +0 -0
- package/dist/collection/components/ez-split-panel/ez-split-panel.css.gz +0 -0
- package/dist/collection/components/ez-split-panel/ez-split-panel.js.gz +0 -0
- package/dist/collection/components/ez-split-panel/interfaces/IPanelSizeInfo.js.gz +0 -0
- package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css.gz +0 -0
- package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js.gz +0 -0
- package/dist/collection/components/ez-tabselector/ez-tabselector.css.gz +0 -0
- package/dist/collection/components/ez-tabselector/ez-tabselector.js.gz +0 -0
- package/dist/collection/components/ez-tag/ez-tag.css.gz +0 -0
- package/dist/collection/components/ez-tag/ez-tag.js.gz +0 -0
- package/dist/collection/components/ez-tag-input/ez-tag-input.css.gz +0 -0
- package/dist/collection/components/ez-tag-input/ez-tag-input.js.gz +0 -0
- package/dist/collection/components/ez-tag-input/interfaces/optionsSetFocus.js.gz +0 -0
- package/dist/collection/components/ez-text-area/ez-text-area.css.gz +0 -0
- package/dist/collection/components/ez-text-area/ez-text-area.js.gz +0 -0
- package/dist/collection/components/ez-text-edit/ez-text-edit.css.gz +0 -0
- package/dist/collection/components/ez-text-edit/ez-text-edit.js.gz +0 -0
- package/dist/collection/components/ez-text-input/ez-text-input.css.gz +0 -0
- package/dist/collection/components/ez-text-input/ez-text-input.js.gz +0 -0
- package/dist/collection/components/ez-tile/ez-tile.css.gz +0 -0
- package/dist/collection/components/ez-tile/ez-tile.js.gz +0 -0
- package/dist/collection/components/ez-tile-medium/ez-tile-medium.css.gz +0 -0
- package/dist/collection/components/ez-tile-medium/ez-tile-medium.js.gz +0 -0
- package/dist/collection/components/ez-time-input/ez-time-input.css.gz +0 -0
- package/dist/collection/components/ez-time-input/ez-time-input.js.gz +0 -0
- package/dist/collection/components/ez-toast/ez-toast.css.gz +0 -0
- package/dist/collection/components/ez-toast/ez-toast.js.gz +0 -0
- package/dist/collection/components/ez-tooltip/ez-tooltip.css.gz +0 -0
- package/dist/collection/components/ez-tooltip/ez-tooltip.js.gz +0 -0
- package/dist/collection/components/ez-tree/ez-tree.css.gz +0 -0
- package/dist/collection/components/ez-tree/ez-tree.js.gz +0 -0
- package/dist/collection/components/ez-tree/interfaces/ITree.js.gz +0 -0
- package/dist/collection/components/ez-tree/interfaces/ITreeItem.js.gz +0 -0
- package/dist/collection/components/ez-tree/interfaces/ITreeItemBadge.js.gz +0 -0
- package/dist/collection/components/ez-tree/subcomponents/DefaultIconResolver.js.gz +0 -0
- package/dist/collection/components/ez-tree/subcomponents/DefaultTooltipResolver.js.gz +0 -0
- package/dist/collection/components/ez-tree/subcomponents/TreeItem.js.gz +0 -0
- package/dist/collection/components/ez-tree/subcomponents/index.js.gz +0 -0
- package/dist/collection/components/ez-tree/types/Node.js.gz +0 -0
- package/dist/collection/components/ez-tree/types/Tree.js.gz +0 -0
- package/dist/collection/components/ez-tree/types/UpdateItemConfig.js.gz +0 -0
- package/dist/collection/components/ez-underface/ez-underface.css.gz +0 -0
- package/dist/collection/components/ez-underface/ez-underface.js.gz +0 -0
- package/dist/collection/components/ez-upload/RemoteFile.js.gz +0 -0
- package/dist/collection/components/ez-upload/ez-upload.css.gz +0 -0
- package/dist/collection/components/ez-upload/ez-upload.js.gz +0 -0
- package/dist/collection/components/ez-view-stack/ez-view-stack.css.gz +0 -0
- package/dist/collection/components/ez-view-stack/ez-view-stack.js.gz +0 -0
- package/dist/collection/global/app-init.js.gz +0 -0
- package/dist/collection/index.js.gz +0 -0
- package/dist/collection/servidor.js.gz +0 -0
- package/dist/collection/setupTests.js.gz +0 -0
- package/dist/collection/sw.js.gz +0 -0
- package/dist/collection/utils/ApplicationUtils.js.gz +0 -0
- package/dist/collection/utils/AssetsUtils.js.gz +0 -0
- package/dist/collection/utils/CSSVarsUtils.js.gz +0 -0
- package/dist/collection/utils/FocusResolver.js.gz +0 -0
- package/dist/collection/utils/ag-grid-license.js.gz +0 -0
- package/dist/collection/utils/constants.js.gz +0 -0
- package/dist/collection/utils/customEditor/interfaces/ICustomEditor.js.gz +0 -0
- package/dist/collection/utils/customEditor/interfaces/ICustomEditorInfo.js.gz +0 -0
- package/dist/collection/utils/customRender/interfaces/ICustomRender.js.gz +0 -0
- package/dist/collection/utils/customRender/interfaces/ICustomRenderInfo.js.gz +0 -0
- package/dist/collection/utils/form/DataBinder.js.gz +0 -0
- package/dist/collection/utils/form/FormMetadata.js.gz +0 -0
- package/dist/collection/utils/form/index.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/FormLayout.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/IDefaultConfig.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/IFormCardConfig.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/IFormConfig.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/IFormSheetMetadata.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/ISummaryField.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/ITabConfig.js.gz +0 -0
- package/dist/collection/utils/form/interfaces/index.js.gz +0 -0
- package/dist/collection/utils/form/test/DataBinder.test.js.gz +0 -0
- package/dist/collection/utils/form/test/resources/metadataTest.js.gz +0 -0
- package/dist/collection/utils/i18n/elanguages.js.gz +0 -0
- package/dist/collection/utils/i18n/index.js.gz +0 -0
- package/dist/collection/utils/i18n/locales/en-us.js.gz +0 -0
- package/dist/collection/utils/i18n/locales/es-es.js.gz +0 -0
- package/dist/collection/utils/i18n/locales/pt-br.js.gz +0 -0
- package/dist/collection/utils/i18n/translations.js.gz +0 -0
- package/dist/collection/utils/index.js.gz +0 -0
- package/dist/collection/utils/interfaces/AbstractFieldMetadata.js.gz +0 -0
- package/dist/collection/utils/interfaces/IAction.js.gz +0 -0
- package/dist/collection/utils/interfaces/IFieldConfig.js.gz +0 -0
- package/dist/collection/utils/mock/ez-upload-mock.js.gz +0 -0
- package/dist/collection/utils/search/types.js.gz +0 -0
- package/dist/collection/utils/searchColumn/search-column.js.gz +0 -0
- package/dist/collection/utils/utils.js.gz +0 -0
- package/dist/collection/utils/validators/recordvalidator/IInvalidCells.js.gz +0 -0
- package/dist/collection/utils/validators/recordvalidator/IInvalidField.js.gz +0 -0
- package/dist/collection/utils/validators/recordvalidator/IRecordValidator.js.gz +0 -0
- package/dist/collection/utils/validators/recordvalidator/IValidationResult.js.gz +0 -0
- package/dist/collection/utils/validators/recordvalidator/IValidationSource.js.gz +0 -0
- package/dist/collection/utils/validators/recordvalidator/RecordValidationProcessor.js.gz +0 -0
- package/dist/custom-elements/index.js +306 -54
- package/dist/custom-elements/index.js.gz +0 -0
- package/dist/esm/ApplicationUtils-1569f757.js.gz +0 -0
- package/dist/esm/CSSVarsUtils-acba92d7.js.gz +0 -0
- package/dist/esm/CheckMode-bdb2ec19.js.gz +0 -0
- package/dist/esm/DialogType-54a62731.js.gz +0 -0
- package/dist/esm/EzScrollDirection-2df26c93.js.gz +0 -0
- package/dist/esm/FocusResolver-1ccbf850.js.gz +0 -0
- package/dist/esm/FormLayout-071d324c.js.gz +0 -0
- package/dist/esm/RichToolbarHelper-f3a149c4.js.gz +0 -0
- package/dist/esm/_commonjsHelpers-9943807e.js.gz +0 -0
- package/dist/esm/app-globals-c0ac93c0.js.gz +0 -0
- package/dist/esm/constants-3fabe81e.js.gz +0 -0
- package/dist/esm/ez-actions-button.entry.js.gz +0 -0
- package/dist/esm/ez-alert-list.entry.js.gz +0 -0
- package/dist/esm/ez-alert.entry.js.gz +0 -0
- package/dist/esm/ez-application.entry.js.gz +0 -0
- package/dist/esm/ez-avatar.entry.js.gz +0 -0
- package/dist/esm/ez-badge.entry.js.gz +0 -0
- package/dist/esm/ez-breadcrumb.entry.js.gz +0 -0
- package/dist/esm/ez-button.entry.js.gz +0 -0
- package/dist/esm/ez-calendar.entry.js.gz +0 -0
- package/dist/esm/ez-card-item.entry.js.gz +0 -0
- package/dist/esm/ez-chart.entry.js.gz +0 -0
- package/dist/esm/ez-check.entry.js.gz +0 -0
- package/dist/esm/ez-chip.entry.js.gz +0 -0
- package/dist/esm/ez-classic-combo-box.entry.js.gz +0 -0
- package/dist/esm/ez-classic-input.entry.js.gz +0 -0
- package/dist/esm/ez-classic-text-area.entry.js.gz +0 -0
- package/dist/esm/ez-collapsible-box.entry.js.gz +0 -0
- package/dist/esm/ez-combo-box-list_4.entry.js +1 -1
- package/dist/esm/ez-combo-box-list_4.entry.js.gz +0 -0
- package/dist/esm/ez-combo-box.entry.js +5 -0
- package/dist/esm/ez-combo-box.entry.js.gz +0 -0
- package/dist/esm/ez-date-input.entry.js.gz +0 -0
- package/dist/esm/ez-date-time-input.entry.js.gz +0 -0
- package/dist/esm/ez-dialog.entry.js.gz +0 -0
- package/dist/esm/ez-double-list.entry.js.gz +0 -0
- package/dist/esm/ez-dropdown.entry.js.gz +0 -0
- package/dist/esm/ez-empty-card.entry.js.gz +0 -0
- package/dist/esm/ez-file-item.entry.js.gz +0 -0
- package/dist/esm/ez-filter-input.entry.js.gz +0 -0
- package/dist/esm/ez-form-view.entry.js.gz +0 -0
- package/dist/esm/ez-form.entry.js.gz +0 -0
- package/dist/esm/ez-grid-view.entry.js.gz +0 -0
- package/dist/esm/ez-grid.entry.js +1 -1
- package/dist/esm/ez-grid.entry.js.gz +0 -0
- package/dist/esm/ez-guide-navigator.entry.js.gz +0 -0
- package/dist/esm/ez-icon.entry.js.gz +0 -0
- package/dist/esm/ez-link-builder_6.entry.js.gz +0 -0
- package/dist/esm/ez-list-item.entry.js.gz +0 -0
- package/dist/esm/ez-list.entry.js.gz +0 -0
- package/dist/esm/ez-loading-bar.entry.js.gz +0 -0
- package/dist/esm/ez-modal-container.entry.js.gz +0 -0
- package/dist/esm/ez-modal.entry.js.gz +0 -0
- package/dist/esm/ez-multi-selection-list.entry.js.gz +0 -0
- package/dist/esm/ez-number-input.entry.js.gz +0 -0
- package/dist/esm/ez-pagination.entry.js.gz +0 -0
- package/dist/esm/ez-popover-core.entry.js.gz +0 -0
- package/dist/esm/ez-popover-plus_3.entry.js.gz +0 -0
- package/dist/esm/ez-popover.entry.js.gz +0 -0
- package/dist/esm/ez-popup.entry.js +3 -3
- package/dist/esm/ez-popup.entry.js.gz +0 -0
- package/dist/esm/ez-progress-bar.entry.js.gz +0 -0
- package/dist/esm/ez-radio-button.entry.js.gz +0 -0
- package/dist/esm/ez-rich-toolbar-item.entry.js.gz +0 -0
- package/dist/esm/ez-scroller_2.entry.js.gz +0 -0
- package/dist/esm/ez-search-plus.entry.js.gz +0 -0
- package/dist/esm/ez-search-result-list.entry.js.gz +0 -0
- package/dist/esm/ez-search.entry.js.gz +0 -0
- package/dist/esm/ez-sidebar-navigator.entry.js.gz +0 -0
- package/dist/esm/ez-skeleton.entry.js.gz +0 -0
- package/dist/esm/ez-sortable-list.entry.js.gz +0 -0
- package/dist/esm/ez-spinner.entry.js.gz +0 -0
- package/dist/esm/ez-split-button.entry.js.gz +0 -0
- package/dist/esm/ez-split-item.entry.js.gz +0 -0
- package/dist/esm/ez-split-panel.entry.js.gz +0 -0
- package/dist/esm/ez-tabselector.entry.js.gz +0 -0
- package/dist/esm/ez-tag-input.entry.js.gz +0 -0
- package/dist/esm/ez-tag.entry.js.gz +0 -0
- package/dist/esm/ez-text-area.entry.js.gz +0 -0
- package/dist/esm/ez-text-input.entry.js.gz +0 -0
- package/dist/esm/ez-tile-medium.entry.js.gz +0 -0
- package/dist/esm/ez-tile.entry.js.gz +0 -0
- package/dist/esm/ez-time-input.entry.js.gz +0 -0
- package/dist/esm/ez-toast.entry.js.gz +0 -0
- package/dist/esm/ez-tooltip.entry.js.gz +0 -0
- package/dist/esm/ez-tree.entry.js.gz +0 -0
- package/dist/esm/ez-underface.entry.js.gz +0 -0
- package/dist/esm/ez-upload.entry.js.gz +0 -0
- package/dist/esm/ez-view-stack.entry.js.gz +0 -0
- package/dist/esm/ezListHelper-00fb9b8d.js.gz +0 -0
- package/dist/esm/ezui.js.gz +0 -0
- package/dist/esm/filter-column.entry.js.gz +0 -0
- package/dist/esm/floating-ui.dom.esm-ad30f2f0.js.gz +0 -0
- package/dist/esm/index-41363fa6.js.gz +0 -0
- package/dist/esm/index-baa5e267.js.gz +0 -0
- package/dist/esm/index.js.gz +0 -0
- package/dist/esm/loader.js.gz +0 -0
- package/dist/esm/polyfills/core-js.js.gz +0 -0
- package/dist/esm/polyfills/css-shim.js.gz +0 -0
- package/dist/esm/polyfills/dom.js.gz +0 -0
- package/dist/esm/polyfills/es5-html-element.js.gz +0 -0
- package/dist/esm/polyfills/index.js.gz +0 -0
- package/dist/esm/polyfills/system.js.gz +0 -0
- package/dist/esm/{purify-bb84fa8e.js → purify-a818ad63.js} +298 -51
- package/dist/esm/purify-a818ad63.js.gz +0 -0
- package/dist/esm/search-column-c20d2b01.js.gz +0 -0
- package/dist/esm/searchFormatters-8229207e.js.gz +0 -0
- package/dist/ezui/ezui.esm.js +1 -1
- package/dist/ezui/ezui.esm.js.gz +0 -0
- package/dist/ezui/index.esm.js.gz +0 -0
- package/dist/ezui/p-02d448bb.entry.js.gz +0 -0
- package/dist/ezui/p-04126429.js.gz +0 -0
- package/dist/ezui/p-05c32903.entry.js.gz +0 -0
- package/dist/ezui/p-0f7971cf.entry.js.gz +0 -0
- package/dist/ezui/p-110cfb7d.entry.js.gz +0 -0
- package/dist/ezui/p-112455b1.js.gz +0 -0
- package/dist/ezui/p-18384b91.entry.js.gz +0 -0
- package/dist/ezui/{p-19651cfd.entry.js → p-183db57c.entry.js} +1 -1
- package/dist/ezui/p-183db57c.entry.js.gz +0 -0
- package/dist/ezui/p-197eb577.js +3 -0
- package/dist/ezui/p-197eb577.js.gz +0 -0
- package/dist/ezui/p-1e7a8633.entry.js.gz +0 -0
- package/dist/ezui/p-1f50fa05.entry.js.gz +0 -0
- package/dist/ezui/p-20c024f7.entry.js.gz +0 -0
- package/dist/ezui/p-23a36bb6.js.gz +0 -0
- package/dist/ezui/p-2528e988.entry.js.gz +0 -0
- package/dist/ezui/p-288631d1.entry.js.gz +0 -0
- package/dist/ezui/p-2a806303.js.gz +0 -0
- package/dist/ezui/p-2b49aa22.entry.js.gz +0 -0
- package/dist/ezui/p-30ffb9ed.js.gz +0 -0
- package/dist/ezui/p-34a476a9.entry.js.gz +0 -0
- package/dist/ezui/p-351fb12f.entry.js.gz +0 -0
- package/dist/ezui/p-39761eca.entry.js.gz +0 -0
- package/dist/ezui/p-3afa1c6e.entry.js.gz +0 -0
- package/dist/ezui/p-3ce867cf.entry.js.gz +0 -0
- package/dist/ezui/p-3e767a74.js.gz +0 -0
- package/dist/ezui/p-40a60148.js.gz +0 -0
- package/dist/ezui/p-411c0222.entry.js.gz +0 -0
- package/dist/ezui/p-4314f87a.entry.js.gz +0 -0
- package/dist/ezui/p-48effc69.entry.js.gz +0 -0
- package/dist/ezui/p-4d30b703.entry.js.gz +0 -0
- package/dist/ezui/p-4fe123b6.entry.js.gz +0 -0
- package/dist/ezui/p-5554704c.js.gz +0 -0
- package/dist/ezui/p-5ed81457.entry.js.gz +0 -0
- package/dist/ezui/p-6020f3d5.entry.js.gz +0 -0
- package/dist/ezui/p-6c51ccd1.entry.js.gz +0 -0
- package/dist/ezui/p-6ca0815e.entry.js.gz +0 -0
- package/dist/ezui/p-6cb82d33.entry.js.gz +0 -0
- package/dist/ezui/p-6d596a5a.entry.js.gz +0 -0
- package/dist/ezui/p-6de4cae1.entry.js +1 -0
- package/dist/ezui/p-6de4cae1.entry.js.gz +0 -0
- package/dist/ezui/p-6f77a359.entry.js.gz +0 -0
- package/dist/ezui/p-721fd999.entry.js.gz +0 -0
- package/dist/ezui/p-7995dcb4.entry.js.gz +0 -0
- package/dist/ezui/p-7f37ee99.entry.js.gz +0 -0
- package/dist/ezui/p-7f792043.entry.js.gz +0 -0
- package/dist/ezui/p-7fe97ef5.entry.js.gz +0 -0
- package/dist/ezui/p-80dfc50b.js.gz +0 -0
- package/dist/ezui/p-859e3134.entry.js.gz +0 -0
- package/dist/ezui/p-8df1ca33.entry.js.gz +0 -0
- package/dist/ezui/p-91c9d50e.entry.js.gz +0 -0
- package/dist/ezui/p-93e1c917.entry.js.gz +0 -0
- package/dist/ezui/p-948f0fb2.entry.js.gz +0 -0
- package/dist/ezui/p-94deb71e.entry.js.gz +0 -0
- package/dist/ezui/p-98bb8b16.js.gz +0 -0
- package/dist/ezui/p-9ab2add9.entry.js.gz +0 -0
- package/dist/ezui/p-9b215871.entry.js.gz +0 -0
- package/dist/ezui/p-9b3f3c02.entry.js.gz +0 -0
- package/dist/ezui/p-9f5fa3f9.entry.js.gz +0 -0
- package/dist/ezui/p-a0bf1fc7.entry.js.gz +0 -0
- package/dist/ezui/p-a278f26e.entry.js.gz +0 -0
- package/dist/ezui/p-a3075f52.entry.js.gz +0 -0
- package/dist/ezui/p-a3ada561.entry.js.gz +0 -0
- package/dist/ezui/p-a4083a7a.entry.js.gz +0 -0
- package/dist/ezui/p-a61fdd20.js.gz +0 -0
- package/dist/ezui/p-a63b20a0.entry.js.gz +0 -0
- package/dist/ezui/p-a80b1287.entry.js.gz +0 -0
- package/dist/ezui/p-ab574d59.js.gz +0 -0
- package/dist/ezui/p-b1e45320.js.gz +0 -0
- package/dist/ezui/p-b3d8034b.entry.js.gz +0 -0
- package/dist/ezui/p-b853763b.js.gz +0 -0
- package/dist/ezui/p-b989a33e.entry.js.gz +0 -0
- package/dist/ezui/p-baec56c9.js.gz +0 -0
- package/dist/ezui/p-bc2f844e.entry.js.gz +0 -0
- package/dist/ezui/{p-3cfaae89.entry.js → p-c9ef8551.entry.js} +1 -1
- package/dist/ezui/p-c9ef8551.entry.js.gz +0 -0
- package/dist/ezui/p-cde41310.entry.js.gz +0 -0
- package/dist/ezui/p-ce0b36d7.entry.js.gz +0 -0
- package/dist/ezui/p-d2645bdf.entry.js.gz +0 -0
- package/dist/ezui/p-d5eb2fad.entry.js.gz +0 -0
- package/dist/ezui/p-d6742c1e.entry.js.gz +0 -0
- package/dist/ezui/p-d6bb930d.entry.js.gz +0 -0
- package/dist/ezui/p-d6f50207.entry.js.gz +0 -0
- package/dist/ezui/p-d8cc640d.entry.js.gz +0 -0
- package/dist/ezui/p-dc628ed3.js.gz +0 -0
- package/dist/ezui/p-de862af4.entry.js.gz +0 -0
- package/dist/ezui/p-dee18824.entry.js.gz +0 -0
- package/dist/ezui/p-e5de42e7.entry.js +1 -0
- package/dist/ezui/p-e5de42e7.entry.js.gz +0 -0
- package/dist/ezui/p-e75c7a23.entry.js.gz +0 -0
- package/dist/ezui/p-e7a7c594.entry.js.gz +0 -0
- package/dist/ezui/p-e8c57463.entry.js.gz +0 -0
- package/dist/ezui/p-ec7db713.js.gz +0 -0
- package/dist/ezui/p-ecd6409d.entry.js.gz +0 -0
- package/dist/ezui/p-ef8bd3e8.entry.js.gz +0 -0
- package/dist/ezui/p-f00c9dc2.entry.js.gz +0 -0
- package/dist/ezui/p-f34ec732.entry.js.gz +0 -0
- package/dist/ezui/p-fa6732f2.entry.js.gz +0 -0
- package/dist/index.cjs.js.gz +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/types/components/ez-popup/ez-popup.d.ts +1 -0
- package/package.json +1 -1
- package/dist/cjs/purify-62aeacfa.js.gz +0 -0
- package/dist/esm/purify-bb84fa8e.js.gz +0 -0
- package/dist/ezui/p-19651cfd.entry.js.gz +0 -0
- package/dist/ezui/p-35bfaa88.entry.js +0 -1
- package/dist/ezui/p-35bfaa88.entry.js.gz +0 -0
- package/dist/ezui/p-3cfaae89.entry.js.gz +0 -0
- package/dist/ezui/p-6a9acf9f.js +0 -3
- package/dist/ezui/p-6a9acf9f.js.gz +0 -0
- package/dist/ezui/p-ec730d4e.entry.js +0 -1
- package/dist/ezui/p-ec730d4e.entry.js.gz +0 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
const _commonjsHelpers = require('./_commonjsHelpers-537d719a.js');
|
|
4
4
|
|
|
5
5
|
var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
6
|
-
/*! @license DOMPurify 3.4.
|
|
6
|
+
/*! @license DOMPurify 3.4.8 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.8/LICENSE */
|
|
7
7
|
|
|
8
8
|
(function (global, factory) {
|
|
9
9
|
module.exports = factory() ;
|
|
@@ -318,7 +318,7 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
318
318
|
const mathMlDisallowed = freeze(['maction', 'maligngroup', 'malignmark', 'mlongdiv', 'mscarries', 'mscarry', 'msgroup', 'mstack', 'msline', 'msrow', 'semantics', 'annotation', 'annotation-xml', 'mprescripts', 'none']);
|
|
319
319
|
const text = freeze(['#text']);
|
|
320
320
|
|
|
321
|
-
const html = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'exportparts', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inert', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'nonce', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'part', 'pattern', 'placeholder', 'playsinline', 'popover', 'popovertarget', 'popovertargetaction', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'slot', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'wrap', 'xmlns']);
|
|
321
|
+
const html = freeze(['accept', 'action', 'align', 'alt', 'autocapitalize', 'autocomplete', 'autopictureinpicture', 'autoplay', 'background', 'bgcolor', 'border', 'capture', 'cellpadding', 'cellspacing', 'checked', 'cite', 'class', 'clear', 'color', 'cols', 'colspan', 'command', 'commandfor', 'controls', 'controlslist', 'coords', 'crossorigin', 'datetime', 'decoding', 'default', 'dir', 'disabled', 'disablepictureinpicture', 'disableremoteplayback', 'download', 'draggable', 'enctype', 'enterkeyhint', 'exportparts', 'face', 'for', 'headers', 'height', 'hidden', 'high', 'href', 'hreflang', 'id', 'inert', 'inputmode', 'integrity', 'ismap', 'kind', 'label', 'lang', 'list', 'loading', 'loop', 'low', 'max', 'maxlength', 'media', 'method', 'min', 'minlength', 'multiple', 'muted', 'name', 'nonce', 'noshade', 'novalidate', 'nowrap', 'open', 'optimum', 'part', 'pattern', 'placeholder', 'playsinline', 'popover', 'popovertarget', 'popovertargetaction', 'poster', 'preload', 'pubdate', 'radiogroup', 'readonly', 'rel', 'required', 'rev', 'reversed', 'role', 'rows', 'rowspan', 'spellcheck', 'scope', 'selected', 'shape', 'size', 'sizes', 'slot', 'span', 'srclang', 'start', 'src', 'srcset', 'step', 'style', 'summary', 'tabindex', 'title', 'translate', 'type', 'usemap', 'valign', 'value', 'width', 'wrap', 'xmlns']);
|
|
322
322
|
const svg = freeze(['accent-height', 'accumulate', 'additive', 'alignment-baseline', 'amplitude', 'ascent', 'attributename', 'attributetype', 'azimuth', 'basefrequency', 'baseline-shift', 'begin', 'bias', 'by', 'class', 'clip', 'clippathunits', 'clip-path', 'clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cx', 'cy', 'd', 'dx', 'dy', 'diffuseconstant', 'direction', 'display', 'divisor', 'dur', 'edgemode', 'elevation', 'end', 'exponent', 'fill', 'fill-opacity', 'fill-rule', 'filter', 'filterunits', 'flood-color', 'flood-opacity', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'fx', 'fy', 'g1', 'g2', 'glyph-name', 'glyphref', 'gradientunits', 'gradienttransform', 'height', 'href', 'id', 'image-rendering', 'in', 'in2', 'intercept', 'k', 'k1', 'k2', 'k3', 'k4', 'kerning', 'keypoints', 'keysplines', 'keytimes', 'lang', 'lengthadjust', 'letter-spacing', 'kernelmatrix', 'kernelunitlength', 'lighting-color', 'local', 'marker-end', 'marker-mid', 'marker-start', 'markerheight', 'markerunits', 'markerwidth', 'maskcontentunits', 'maskunits', 'max', 'mask', 'mask-type', 'media', 'method', 'mode', 'min', 'name', 'numoctaves', 'offset', 'operator', 'opacity', 'order', 'orient', 'orientation', 'origin', 'overflow', 'paint-order', 'path', 'pathlength', 'patterncontentunits', 'patterntransform', 'patternunits', 'points', 'preservealpha', 'preserveaspectratio', 'primitiveunits', 'r', 'rx', 'ry', 'radius', 'refx', 'refy', 'repeatcount', 'repeatdur', 'restart', 'result', 'rotate', 'scale', 'seed', 'shape-rendering', 'slope', 'specularconstant', 'specularexponent', 'spreadmethod', 'startoffset', 'stddeviation', 'stitchtiles', 'stop-color', 'stop-opacity', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke', 'stroke-width', 'style', 'surfacescale', 'systemlanguage', 'tabindex', 'tablevalues', 'targetx', 'targety', 'transform', 'transform-origin', 'text-anchor', 'text-decoration', 'text-rendering', 'textlength', 'type', 'u1', 'u2', 'unicode', 'values', 'viewbox', 'visibility', 'version', 'vert-adv-y', 'vert-origin-x', 'vert-origin-y', 'width', 'word-spacing', 'wrap', 'writing-mode', 'xchannelselector', 'ychannelselector', 'x', 'x1', 'x2', 'xmlns', 'y', 'y1', 'y2', 'z', 'zoomandpan']);
|
|
323
323
|
const mathMl = freeze(['accent', 'accentunder', 'align', 'bevelled', 'close', 'columnalign', 'columnlines', 'columnspacing', 'columnspan', 'denomalign', 'depth', 'dir', 'display', 'displaystyle', 'encoding', 'fence', 'frame', 'height', 'href', 'id', 'largeop', 'length', 'linethickness', 'lquote', 'lspace', 'mathbackground', 'mathcolor', 'mathsize', 'mathvariant', 'maxsize', 'minsize', 'movablelimits', 'notation', 'numalign', 'open', 'rowalign', 'rowlines', 'rowspacing', 'rowspan', 'rspace', 'rquote', 'scriptlevel', 'scriptminsize', 'scriptsizemultiplier', 'selection', 'separator', 'separators', 'stretchy', 'subscriptshift', 'supscriptshift', 'symmetric', 'voffset', 'width', 'xmlns']);
|
|
324
324
|
const xml = freeze(['xlink:href', 'xml:id', 'xlink:title', 'xml:space', 'xmlns:xlink']);
|
|
@@ -340,11 +340,20 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
340
340
|
// https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType
|
|
341
341
|
const NODE_TYPE = {
|
|
342
342
|
element: 1,
|
|
343
|
+
attribute: 2,
|
|
343
344
|
text: 3,
|
|
345
|
+
cdataSection: 4,
|
|
346
|
+
entityReference: 5,
|
|
347
|
+
// Deprecated
|
|
348
|
+
entityNode: 6,
|
|
344
349
|
// Deprecated
|
|
345
350
|
progressingInstruction: 7,
|
|
346
351
|
comment: 8,
|
|
347
|
-
document: 9
|
|
352
|
+
document: 9,
|
|
353
|
+
documentType: 10,
|
|
354
|
+
documentFragment: 11,
|
|
355
|
+
notation: 12 // Deprecated
|
|
356
|
+
};
|
|
348
357
|
const getGlobal = function getGlobal() {
|
|
349
358
|
return typeof window === 'undefined' ? null : window;
|
|
350
359
|
};
|
|
@@ -401,7 +410,7 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
401
410
|
function createDOMPurify() {
|
|
402
411
|
let window = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getGlobal();
|
|
403
412
|
const DOMPurify = root => createDOMPurify(root);
|
|
404
|
-
DOMPurify.version = '3.4.
|
|
413
|
+
DOMPurify.version = '3.4.8';
|
|
405
414
|
DOMPurify.removed = [];
|
|
406
415
|
if (!window || !window.document || window.document.nodeType !== NODE_TYPE.document || !window.Element) {
|
|
407
416
|
// Not running in a browser, provide a factory function
|
|
@@ -412,15 +421,11 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
412
421
|
let document = window.document;
|
|
413
422
|
const originalDocument = document;
|
|
414
423
|
const currentScript = originalDocument.currentScript;
|
|
415
|
-
|
|
416
|
-
HTMLTemplateElement = window.HTMLTemplateElement,
|
|
424
|
+
const HTMLTemplateElement = window.HTMLTemplateElement,
|
|
417
425
|
Node = window.Node,
|
|
418
426
|
Element = window.Element,
|
|
419
|
-
NodeFilter = window.NodeFilter
|
|
420
|
-
|
|
421
|
-
NamedNodeMap = _window$NamedNodeMap === void 0 ? window.NamedNodeMap || window.MozNamedAttrMap : _window$NamedNodeMap,
|
|
422
|
-
HTMLFormElement = window.HTMLFormElement,
|
|
423
|
-
DOMParser = window.DOMParser,
|
|
427
|
+
NodeFilter = window.NodeFilter;
|
|
428
|
+
const DOMParser = window.DOMParser,
|
|
424
429
|
trustedTypes = window.trustedTypes;
|
|
425
430
|
const ElementPrototype = Element.prototype;
|
|
426
431
|
const cloneNode = lookupGetter(ElementPrototype, 'cloneNode');
|
|
@@ -428,6 +433,10 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
428
433
|
const getNextSibling = lookupGetter(ElementPrototype, 'nextSibling');
|
|
429
434
|
const getChildNodes = lookupGetter(ElementPrototype, 'childNodes');
|
|
430
435
|
const getParentNode = lookupGetter(ElementPrototype, 'parentNode');
|
|
436
|
+
const getShadowRoot = lookupGetter(ElementPrototype, 'shadowRoot');
|
|
437
|
+
const getAttributes = lookupGetter(ElementPrototype, 'attributes');
|
|
438
|
+
const getNodeType = Node && Node.prototype ? lookupGetter(Node.prototype, 'nodeType') : null;
|
|
439
|
+
const getNodeName = Node && Node.prototype ? lookupGetter(Node.prototype, 'nodeName') : null;
|
|
431
440
|
// As per issue #47, the web-components registry is inherited by a
|
|
432
441
|
// new document created via createHTMLDocument. As per the spec
|
|
433
442
|
// (http://w3c.github.io/webcomponents/spec/custom/#creating-and-passing-registries)
|
|
@@ -442,6 +451,23 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
442
451
|
}
|
|
443
452
|
let trustedTypesPolicy;
|
|
444
453
|
let emptyHTML = '';
|
|
454
|
+
// Tracks whether we are already inside a call to the configured Trusted Types
|
|
455
|
+
// policy's `createHTML`. If the supplied `TRUSTED_TYPES_POLICY.createHTML`
|
|
456
|
+
// itself calls `DOMPurify.sanitize` (the cause of #1422), `sanitize` would
|
|
457
|
+
// re-enter the policy and recurse until the stack overflows. We detect that
|
|
458
|
+
// re-entry and throw a clear, actionable error instead.
|
|
459
|
+
let IN_POLICY_CREATE_HTML = 0;
|
|
460
|
+
const _createTrustedHTML = function _createTrustedHTML(html) {
|
|
461
|
+
if (IN_POLICY_CREATE_HTML > 0) {
|
|
462
|
+
throw typeErrorCreate('The configured TRUSTED_TYPES_POLICY.createHTML must not call ' + 'DOMPurify.sanitize, as that causes infinite recursion. Do not pass ' + 'a policy whose createHTML wraps DOMPurify as TRUSTED_TYPES_POLICY; ' + 'see the "DOMPurify and Trusted Types" section of the README.');
|
|
463
|
+
}
|
|
464
|
+
IN_POLICY_CREATE_HTML++;
|
|
465
|
+
try {
|
|
466
|
+
return trustedTypesPolicy.createHTML(html);
|
|
467
|
+
} finally {
|
|
468
|
+
IN_POLICY_CREATE_HTML--;
|
|
469
|
+
}
|
|
470
|
+
};
|
|
445
471
|
const _document = document,
|
|
446
472
|
implementation = _document.implementation,
|
|
447
473
|
createNodeIterator = _document.createNodeIterator,
|
|
@@ -769,19 +795,47 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
769
795
|
throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');
|
|
770
796
|
}
|
|
771
797
|
// Overwrite existing TrustedTypes policy.
|
|
798
|
+
const previousTrustedTypesPolicy = trustedTypesPolicy;
|
|
772
799
|
trustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY;
|
|
773
|
-
// Sign local variables required by `sanitize`.
|
|
774
|
-
|
|
800
|
+
// Sign local variables required by `sanitize`. If the supplied policy's
|
|
801
|
+
// `createHTML` is circular (i.e. it calls `DOMPurify.sanitize`), this
|
|
802
|
+
// throws via the re-entrancy guard. Restore the previous policy first so
|
|
803
|
+
// the instance is not left in a poisoned state. See #1422.
|
|
804
|
+
try {
|
|
805
|
+
emptyHTML = _createTrustedHTML('');
|
|
806
|
+
} catch (error) {
|
|
807
|
+
trustedTypesPolicy = previousTrustedTypesPolicy;
|
|
808
|
+
throw error;
|
|
809
|
+
}
|
|
775
810
|
} else {
|
|
776
811
|
// Uninitialized policy, attempt to initialize the internal dompurify policy.
|
|
777
|
-
if (trustedTypesPolicy === undefined) {
|
|
812
|
+
if (trustedTypesPolicy === undefined && cfg.TRUSTED_TYPES_POLICY !== null) {
|
|
778
813
|
trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript);
|
|
779
814
|
}
|
|
780
815
|
// If creating the internal policy succeeded sign internal variables.
|
|
781
|
-
|
|
782
|
-
|
|
816
|
+
// Note: a falsy `trustedTypesPolicy` (null when policy creation failed or
|
|
817
|
+
// was skipped via `TRUSTED_TYPES_POLICY: null`, or undefined when no
|
|
818
|
+
// policy has been initialized yet) must be excluded here, otherwise we
|
|
819
|
+
// would call `.createHTML` on a non-policy and throw. See #1422.
|
|
820
|
+
if (trustedTypesPolicy && typeof emptyHTML === 'string') {
|
|
821
|
+
emptyHTML = _createTrustedHTML('');
|
|
783
822
|
}
|
|
784
823
|
}
|
|
824
|
+
/*
|
|
825
|
+
* Mirror the clone-before-mutate pattern already applied above for
|
|
826
|
+
* cfg.ADD_TAGS / cfg.ADD_ATTR: if any uponSanitize* hook is
|
|
827
|
+
* registered AND the set still points at the default constant,
|
|
828
|
+
* clone it. The hook then mutates the clone (in-call widening
|
|
829
|
+
* still works exactly as documented) and the next default-cfg
|
|
830
|
+
* call rebinds to the untouched original via the reassignment at
|
|
831
|
+
* the top of this function.
|
|
832
|
+
*/
|
|
833
|
+
if ((hooks.uponSanitizeElement.length > 0 || hooks.uponSanitizeAttribute.length > 0) && ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {
|
|
834
|
+
ALLOWED_TAGS = clone(ALLOWED_TAGS);
|
|
835
|
+
}
|
|
836
|
+
if (hooks.uponSanitizeAttribute.length > 0 && ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {
|
|
837
|
+
ALLOWED_ATTR = clone(ALLOWED_ATTR);
|
|
838
|
+
}
|
|
785
839
|
// Prevent further manipulation of configuration.
|
|
786
840
|
// Not available in IE8, Safari 5, etc.
|
|
787
841
|
if (freeze) {
|
|
@@ -941,7 +995,7 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
941
995
|
// Root of XHTML doc must contain xmlns declaration (see https://www.w3.org/TR/xhtml1/normative.html#strict)
|
|
942
996
|
dirty = '<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>' + dirty + '</body></html>';
|
|
943
997
|
}
|
|
944
|
-
const dirtyPayload = trustedTypesPolicy ?
|
|
998
|
+
const dirtyPayload = trustedTypesPolicy ? _createTrustedHTML(dirty) : dirty;
|
|
945
999
|
/*
|
|
946
1000
|
* Use the DOMParser API by default, fallback later if needs be
|
|
947
1001
|
* DOMParser not work for svg when has multiple root element.
|
|
@@ -981,23 +1035,142 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
981
1035
|
// eslint-disable-next-line no-bitwise
|
|
982
1036
|
NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT | NodeFilter.SHOW_PROCESSING_INSTRUCTION | NodeFilter.SHOW_CDATA_SECTION, null);
|
|
983
1037
|
};
|
|
1038
|
+
/**
|
|
1039
|
+
* Strip template-engine expressions ({{...}}, ${...}, <%...%>) from the
|
|
1040
|
+
* character data of an element subtree. Used as the final safety net for
|
|
1041
|
+
* SAFE_FOR_TEMPLATES on every DOM-returning code path so that expressions
|
|
1042
|
+
* which only form after text-node normalization (e.g. fragments split across
|
|
1043
|
+
* stripped elements) cannot survive into a template-evaluating framework.
|
|
1044
|
+
*
|
|
1045
|
+
* Walks text/comment/CDATA/processing-instruction nodes and mutates `.data`
|
|
1046
|
+
* in place rather than round-tripping through innerHTML. This preserves
|
|
1047
|
+
* descendant node references (important for IN_PLACE callers), avoids a
|
|
1048
|
+
* serialize/reparse cycle, and reads literal character data — which means
|
|
1049
|
+
* `<%...%>` in text content matches the ERB regex against its real bytes
|
|
1050
|
+
* instead of the HTML-entity-escaped form innerHTML would produce.
|
|
1051
|
+
*
|
|
1052
|
+
* Attribute values are not visited here; SAFE_FOR_TEMPLATES handling for
|
|
1053
|
+
* attributes is performed during the per-node `_sanitizeAttributes` pass.
|
|
1054
|
+
*
|
|
1055
|
+
* @param node The root element whose character data should be scrubbed.
|
|
1056
|
+
*/
|
|
1057
|
+
const _scrubTemplateExpressions2 = function _scrubTemplateExpressions(node) {
|
|
1058
|
+
var _node$querySelectorAl, _node$querySelectorAl2;
|
|
1059
|
+
node.normalize();
|
|
1060
|
+
const walker = createNodeIterator.call(node.ownerDocument || node, node,
|
|
1061
|
+
// eslint-disable-next-line no-bitwise
|
|
1062
|
+
NodeFilter.SHOW_TEXT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_CDATA_SECTION | NodeFilter.SHOW_PROCESSING_INSTRUCTION, null);
|
|
1063
|
+
let currentNode = walker.nextNode();
|
|
1064
|
+
while (currentNode) {
|
|
1065
|
+
let data = currentNode.data;
|
|
1066
|
+
arrayForEach([MUSTACHE_EXPR$1, ERB_EXPR$1, TMPLIT_EXPR$1], expr => {
|
|
1067
|
+
data = stringReplace(data, expr, ' ');
|
|
1068
|
+
});
|
|
1069
|
+
currentNode.data = data;
|
|
1070
|
+
currentNode = walker.nextNode();
|
|
1071
|
+
}
|
|
1072
|
+
// NodeIterator does not descend into <template>.content per the DOM spec,
|
|
1073
|
+
// so we must explicitly recurse into each template's content fragment,
|
|
1074
|
+
// mirroring the approach used by _sanitizeShadowDOM.
|
|
1075
|
+
const templates = (_node$querySelectorAl = (_node$querySelectorAl2 = node.querySelectorAll) === null || _node$querySelectorAl2 === void 0 ? void 0 : _node$querySelectorAl2.call(node, 'template')) !== null && _node$querySelectorAl !== void 0 ? _node$querySelectorAl : [];
|
|
1076
|
+
arrayForEach(Array.from(templates), tmpl => {
|
|
1077
|
+
if (_isDocumentFragment(tmpl.content)) {
|
|
1078
|
+
_scrubTemplateExpressions2(tmpl.content);
|
|
1079
|
+
}
|
|
1080
|
+
});
|
|
1081
|
+
};
|
|
984
1082
|
/**
|
|
985
1083
|
* _isClobbered
|
|
986
1084
|
*
|
|
1085
|
+
* Detect DOM-clobbering on HTMLFormElement nodes. Form is the only HTML
|
|
1086
|
+
* interface with [LegacyOverrideBuiltIns]; a descendant element with a
|
|
1087
|
+
* `name` attribute matching a prototype property shadows that property
|
|
1088
|
+
* on direct reads. We use this check at the IN_PLACE entry-point and
|
|
1089
|
+
* during attribute sanitization to refuse clobbered forms.
|
|
1090
|
+
*
|
|
987
1091
|
* @param element element to check for clobbering attacks
|
|
988
1092
|
* @return true if clobbered, false if safe
|
|
989
1093
|
*/
|
|
990
1094
|
const _isClobbered = function _isClobbered(element) {
|
|
991
|
-
|
|
1095
|
+
// Realm-independent tag-name probe. If we can't determine the tag
|
|
1096
|
+
// name at all, we can't reason about clobbering — return false
|
|
1097
|
+
// (the caller's other defences still apply).
|
|
1098
|
+
const realTagName = getNodeName ? getNodeName(element) : null;
|
|
1099
|
+
if (typeof realTagName !== 'string') {
|
|
1100
|
+
return false;
|
|
1101
|
+
}
|
|
1102
|
+
if (transformCaseFunc(realTagName) !== 'form') {
|
|
1103
|
+
return false;
|
|
1104
|
+
}
|
|
1105
|
+
return typeof element.nodeName !== 'string' || typeof element.textContent !== 'string' || typeof element.removeChild !== 'function' ||
|
|
1106
|
+
// Realm-safe NamedNodeMap detection: equality against the cached
|
|
1107
|
+
// prototype getter. Clobbered .attributes (e.g. <input name="attributes">)
|
|
1108
|
+
// makes the direct read diverge from the cached read; a clean form
|
|
1109
|
+
// (same-realm OR foreign-realm) has both reads pointing at the same
|
|
1110
|
+
// canonical NamedNodeMap.
|
|
1111
|
+
element.attributes !== getAttributes(element) || typeof element.removeAttribute !== 'function' || typeof element.setAttribute !== 'function' || typeof element.namespaceURI !== 'string' || typeof element.insertBefore !== 'function' || typeof element.hasChildNodes !== 'function' ||
|
|
1112
|
+
// NodeType clobbering probe. Cached Node.prototype.nodeType getter
|
|
1113
|
+
// returns the integer 1 for any Element regardless of realm; direct
|
|
1114
|
+
// read on a clobbered form (e.g. <input name="nodeType">) returns
|
|
1115
|
+
// the named child element. Cheap addition — nodeType is read from
|
|
1116
|
+
// an internal slot, no serialization cost — and removes a residual
|
|
1117
|
+
// clobbering surface used by several mXSS / PI / comment branches
|
|
1118
|
+
// in _sanitizeElements that compare currentNode.nodeType directly.
|
|
1119
|
+
element.nodeType !== getNodeType(element) ||
|
|
1120
|
+
// HTMLFormElement has [LegacyOverrideBuiltIns]: a descendant named
|
|
1121
|
+
// "childNodes" shadows the prototype getter. Direct reads of
|
|
1122
|
+
// form.childNodes from a clobbered form return the named child
|
|
1123
|
+
// instead of the real NodeList, so any walk that reads it directly
|
|
1124
|
+
// skips the form's real children. Compare the direct read to the
|
|
1125
|
+
// cached Node.prototype getter — when the form's named-property
|
|
1126
|
+
// getter intercepts the read, the two values differ and we flag
|
|
1127
|
+
// the form. This catches every clobbering child type (input,
|
|
1128
|
+
// select, etc.) regardless of whether the named child happens to
|
|
1129
|
+
// carry a numeric .length, which a typeof-based probe would miss
|
|
1130
|
+
// (e.g. HTMLSelectElement.length is a defined unsigned-long).
|
|
1131
|
+
element.childNodes !== getChildNodes(element);
|
|
992
1132
|
};
|
|
993
1133
|
/**
|
|
994
|
-
* Checks whether the given
|
|
1134
|
+
* Checks whether the given value is a DocumentFragment from any realm.
|
|
1135
|
+
*
|
|
1136
|
+
* The realm-independent replacement reads `nodeType` through the cached
|
|
1137
|
+
* Node.prototype getter and compares to the DOCUMENT_FRAGMENT_NODE
|
|
1138
|
+
* constant (11). nodeType is a numeric value resolved from the node's
|
|
1139
|
+
* internal slot, identical across realms for the same kind of node.
|
|
1140
|
+
*
|
|
1141
|
+
* @param value object to check
|
|
1142
|
+
* @return true if value is a DocumentFragment-shaped node from any realm
|
|
1143
|
+
*/
|
|
1144
|
+
const _isDocumentFragment = function _isDocumentFragment(value) {
|
|
1145
|
+
if (!getNodeType || typeof value !== 'object' || value === null) {
|
|
1146
|
+
return false;
|
|
1147
|
+
}
|
|
1148
|
+
try {
|
|
1149
|
+
return getNodeType(value) === NODE_TYPE.documentFragment;
|
|
1150
|
+
} catch (_) {
|
|
1151
|
+
return false;
|
|
1152
|
+
}
|
|
1153
|
+
};
|
|
1154
|
+
/**
|
|
1155
|
+
* Checks whether the given object is a DOM node, including nodes that
|
|
1156
|
+
* originate from a different window/realm (e.g. an iframe's
|
|
1157
|
+
* contentDocument). The previous `value instanceof Node` check was
|
|
1158
|
+
* realm-bound: nodes from a different window failed it, causing
|
|
1159
|
+
* sanitize() to silently stringify them and reset IN_PLACE to false,
|
|
1160
|
+
* returning the original node unsanitized. See GHSA-4w3q-35jp-p934.
|
|
995
1161
|
*
|
|
996
1162
|
* @param value object to check whether it's a DOM node
|
|
997
|
-
* @return true
|
|
1163
|
+
* @return true if value is a DOM node from any realm
|
|
998
1164
|
*/
|
|
999
1165
|
const _isNode = function _isNode(value) {
|
|
1000
|
-
|
|
1166
|
+
if (!getNodeType || typeof value !== 'object' || value === null) {
|
|
1167
|
+
return false;
|
|
1168
|
+
}
|
|
1169
|
+
try {
|
|
1170
|
+
return typeof getNodeType(value) === 'number';
|
|
1171
|
+
} catch (_) {
|
|
1172
|
+
return false;
|
|
1173
|
+
}
|
|
1001
1174
|
};
|
|
1002
1175
|
function _executeHooks(hooks, currentNode, data) {
|
|
1003
1176
|
arrayForEach(hooks, hook => {
|
|
@@ -1023,7 +1196,7 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1023
1196
|
return true;
|
|
1024
1197
|
}
|
|
1025
1198
|
/* Now let's check the element's type and name */
|
|
1026
|
-
const tagName = transformCaseFunc(currentNode.nodeName);
|
|
1199
|
+
const tagName = transformCaseFunc(getNodeName ? getNodeName(currentNode) : currentNode.nodeName);
|
|
1027
1200
|
/* Execute a hook if present */
|
|
1028
1201
|
_executeHooks(hooks.uponSanitizeElement, currentNode, {
|
|
1029
1202
|
tagName,
|
|
@@ -1060,10 +1233,17 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1060
1233
|
return false;
|
|
1061
1234
|
}
|
|
1062
1235
|
}
|
|
1063
|
-
/* Keep content except for bad-listed elements
|
|
1236
|
+
/* Keep content except for bad-listed elements.
|
|
1237
|
+
Use the cached prototype getters exclusively — the previous code
|
|
1238
|
+
had `|| currentNode.parentNode` / `|| currentNode.childNodes`
|
|
1239
|
+
fallbacks, but the cached getters always return the canonical
|
|
1240
|
+
value (or null for a real parent-less node), so the fallback
|
|
1241
|
+
path was dead in safe cases and a clobbering surface in unsafe
|
|
1242
|
+
ones. Falsy cached results stay falsy; the `if (childNodes &&
|
|
1243
|
+
parentNode)` check already gates correctly. */
|
|
1064
1244
|
if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) {
|
|
1065
|
-
const parentNode = getParentNode(currentNode)
|
|
1066
|
-
const childNodes = getChildNodes(currentNode)
|
|
1245
|
+
const parentNode = getParentNode(currentNode);
|
|
1246
|
+
const childNodes = getChildNodes(currentNode);
|
|
1067
1247
|
if (childNodes && parentNode) {
|
|
1068
1248
|
const childCount = childNodes.length;
|
|
1069
1249
|
for (let i = childCount - 1; i >= 0; --i) {
|
|
@@ -1075,8 +1255,14 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1075
1255
|
_forceRemove(currentNode);
|
|
1076
1256
|
return true;
|
|
1077
1257
|
}
|
|
1078
|
-
/* Check whether element has a valid namespace
|
|
1079
|
-
|
|
1258
|
+
/* Check whether element has a valid namespace.
|
|
1259
|
+
Realm-safe check (GHSA-hpcv-96wg-7vj8): use the cached Node.prototype
|
|
1260
|
+
nodeType getter rather than `instanceof Element`, which is realm-
|
|
1261
|
+
bound and short-circuits to false for any node minted in a different
|
|
1262
|
+
realm — letting a foreign-realm element with a forbidden namespace
|
|
1263
|
+
slip past the namespace check entirely. */
|
|
1264
|
+
const nt = getNodeType ? getNodeType(currentNode) : currentNode.nodeType;
|
|
1265
|
+
if (nt === NODE_TYPE.element && !_checkValidNamespace(currentNode)) {
|
|
1080
1266
|
_forceRemove(currentNode);
|
|
1081
1267
|
return true;
|
|
1082
1268
|
}
|
|
@@ -1253,7 +1439,7 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1253
1439
|
switch (trustedTypes.getAttributeType(lcTag, lcName)) {
|
|
1254
1440
|
case 'TrustedHTML':
|
|
1255
1441
|
{
|
|
1256
|
-
value =
|
|
1442
|
+
value = _createTrustedHTML(value);
|
|
1257
1443
|
break;
|
|
1258
1444
|
}
|
|
1259
1445
|
case 'TrustedScriptURL':
|
|
@@ -1303,10 +1489,31 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1303
1489
|
_sanitizeElements(shadowNode);
|
|
1304
1490
|
/* Check attributes next */
|
|
1305
1491
|
_sanitizeAttributes(shadowNode);
|
|
1306
|
-
/* Deep shadow DOM detected
|
|
1307
|
-
|
|
1492
|
+
/* Deep shadow DOM detected.
|
|
1493
|
+
Realm-safe check (GHSA-hpcv-96wg-7vj8): use nodeType against the
|
|
1494
|
+
DOCUMENT_FRAGMENT_NODE constant rather than instanceof, so we
|
|
1495
|
+
recurse into <template>.content from foreign realms too. */
|
|
1496
|
+
if (_isDocumentFragment(shadowNode.content)) {
|
|
1308
1497
|
_sanitizeShadowDOM2(shadowNode.content);
|
|
1309
1498
|
}
|
|
1499
|
+
/* An element iterated here may itself host an attached
|
|
1500
|
+
shadow root. The default NodeIterator does not enter shadow
|
|
1501
|
+
trees, so a shadow root nested inside template.content was
|
|
1502
|
+
previously reached by no walk at all (the pre-pass at
|
|
1503
|
+
_sanitizeAttachedShadowRoots descends via childNodes, which
|
|
1504
|
+
doesn't enter template.content; the template-content recursion
|
|
1505
|
+
above iterates the content but never inspected shadowRoot).
|
|
1506
|
+
Walk it explicitly. The nodeType guard avoids reading
|
|
1507
|
+
shadowRoot off text / comment / CDATA / PI nodes that the
|
|
1508
|
+
iterator also surfaces. */
|
|
1509
|
+
const shadowNodeType = getNodeType ? getNodeType(shadowNode) : shadowNode.nodeType;
|
|
1510
|
+
if (shadowNodeType === NODE_TYPE.element) {
|
|
1511
|
+
const innerSr = getShadowRoot ? getShadowRoot(shadowNode) : shadowNode.shadowRoot;
|
|
1512
|
+
if (_isDocumentFragment(innerSr)) {
|
|
1513
|
+
_sanitizeAttachedShadowRoots2(innerSr);
|
|
1514
|
+
_sanitizeShadowDOM2(innerSr);
|
|
1515
|
+
}
|
|
1516
|
+
}
|
|
1310
1517
|
}
|
|
1311
1518
|
/* Execute a hook if present */
|
|
1312
1519
|
_executeHooks(hooks.afterSanitizeShadowDOM, fragment, null);
|
|
@@ -1331,18 +1538,28 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1331
1538
|
* @param root the subtree root to walk for attached shadow roots
|
|
1332
1539
|
*/
|
|
1333
1540
|
const _sanitizeAttachedShadowRoots2 = function _sanitizeAttachedShadowRoots(root) {
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
//
|
|
1338
|
-
|
|
1339
|
-
|
|
1541
|
+
const nodeType = getNodeType ? getNodeType(root) : root.nodeType;
|
|
1542
|
+
if (nodeType === NODE_TYPE.element) {
|
|
1543
|
+
const sr = getShadowRoot ? getShadowRoot(root) : root.shadowRoot;
|
|
1544
|
+
// Realm-safe check (GHSA-hpcv-96wg-7vj8): use nodeType-based
|
|
1545
|
+
// detection rather than `instanceof DocumentFragment`, which is
|
|
1546
|
+
// realm-bound and silently skipped shadow roots whose host element
|
|
1547
|
+
// belonged to a foreign realm (e.g. iframe.contentDocument
|
|
1548
|
+
// attachShadow). A foreign-realm ShadowRoot extends the foreign
|
|
1549
|
+
// realm's DocumentFragment, not ours, so the old instanceof check
|
|
1550
|
+
// returned false and the shadow subtree was never walked.
|
|
1551
|
+
if (_isDocumentFragment(sr)) {
|
|
1552
|
+
// Recurse first so that nested shadow roots are reached even if
|
|
1553
|
+
// _sanitizeShadowDOM removes hosts at this level.
|
|
1554
|
+
_sanitizeAttachedShadowRoots2(sr);
|
|
1555
|
+
_sanitizeShadowDOM2(sr);
|
|
1556
|
+
}
|
|
1340
1557
|
}
|
|
1341
1558
|
// Snapshot children before recursing. Sanitization of one subtree
|
|
1342
1559
|
// (e.g. via an uponSanitizeShadowNode hook) may detach siblings,
|
|
1343
1560
|
// and naive nextSibling traversal would silently skip the rest of
|
|
1344
1561
|
// the list once a node is detached.
|
|
1345
|
-
const childNodes = root.childNodes;
|
|
1562
|
+
const childNodes = getChildNodes ? getChildNodes(root) : root.childNodes;
|
|
1346
1563
|
if (!childNodes) {
|
|
1347
1564
|
return;
|
|
1348
1565
|
}
|
|
@@ -1353,6 +1570,16 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1353
1570
|
for (const child of snapshot) {
|
|
1354
1571
|
_sanitizeAttachedShadowRoots2(child);
|
|
1355
1572
|
}
|
|
1573
|
+
/* When the root is a <template>, also descend into root.content */
|
|
1574
|
+
if (nodeType === NODE_TYPE.element) {
|
|
1575
|
+
const rootName = getNodeName ? getNodeName(root) : null;
|
|
1576
|
+
if (typeof rootName === 'string' && transformCaseFunc(rootName) === 'template') {
|
|
1577
|
+
const content = root.content;
|
|
1578
|
+
if (_isDocumentFragment(content)) {
|
|
1579
|
+
_sanitizeAttachedShadowRoots2(content);
|
|
1580
|
+
}
|
|
1581
|
+
}
|
|
1582
|
+
}
|
|
1356
1583
|
};
|
|
1357
1584
|
// eslint-disable-next-line complexity
|
|
1358
1585
|
DOMPurify.sanitize = function (dirty) {
|
|
@@ -1390,18 +1617,35 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1390
1617
|
IN_PLACE = false;
|
|
1391
1618
|
}
|
|
1392
1619
|
if (IN_PLACE) {
|
|
1393
|
-
/* Do some early pre-sanitization to avoid unsafe root nodes
|
|
1394
|
-
|
|
1620
|
+
/* Do some early pre-sanitization to avoid unsafe root nodes.
|
|
1621
|
+
Read nodeName through the cached prototype getter — a clobbering
|
|
1622
|
+
child named "nodeName" on the form root would otherwise shadow
|
|
1623
|
+
the property and let this check skip the root-allowlist
|
|
1624
|
+
validation entirely. */
|
|
1625
|
+
const nn = getNodeName ? getNodeName(dirty) : dirty.nodeName;
|
|
1395
1626
|
if (typeof nn === 'string') {
|
|
1396
1627
|
const tagName = transformCaseFunc(nn);
|
|
1397
1628
|
if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {
|
|
1398
1629
|
throw typeErrorCreate('root node is forbidden and cannot be sanitized in-place');
|
|
1399
1630
|
}
|
|
1400
1631
|
}
|
|
1632
|
+
/* Pre-flight the root through _isClobbered. The iterator-driven
|
|
1633
|
+
removal path can not detach a parent-less root: _forceRemove
|
|
1634
|
+
falls through to Element.prototype.remove(), which per spec
|
|
1635
|
+
is a no-op on a node with no parent. A clobbered root would
|
|
1636
|
+
then survive the main loop with its attributes uninspected,
|
|
1637
|
+
because _sanitizeAttributes early-returns on _isClobbered. The
|
|
1638
|
+
result would be an attacker-controlled form, complete with any
|
|
1639
|
+
event-handler attributes the caller passed in, handed back to
|
|
1640
|
+
the application unsanitized. Refuse to sanitize such a root
|
|
1641
|
+
the same way we refuse a forbidden tag. GHSA-r47g-fvhr-h676. */
|
|
1642
|
+
if (_isClobbered(dirty)) {
|
|
1643
|
+
throw typeErrorCreate('root node is clobbered and cannot be sanitized in-place');
|
|
1644
|
+
}
|
|
1401
1645
|
/* Sanitize attached shadow roots before the main iterator runs.
|
|
1402
1646
|
The iterator does not descend into shadow trees. */
|
|
1403
1647
|
_sanitizeAttachedShadowRoots2(dirty);
|
|
1404
|
-
} else if (dirty
|
|
1648
|
+
} else if (_isNode(dirty)) {
|
|
1405
1649
|
/* If dirty is a DOM element, append to an empty document to avoid
|
|
1406
1650
|
elements being stripped by the parser */
|
|
1407
1651
|
body = _initDocument('<!---->');
|
|
@@ -1417,14 +1661,16 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1417
1661
|
}
|
|
1418
1662
|
/* Clonable shadow roots are deep-cloned by importNode(); sanitize
|
|
1419
1663
|
them before the main iterator runs, since the iterator does not
|
|
1420
|
-
descend into shadow trees.
|
|
1664
|
+
descend into shadow trees. The walk routes every read through a
|
|
1665
|
+
cached prototype getter so clobbering descendants on a form root
|
|
1666
|
+
cannot hide a shadow host from this pass. */
|
|
1421
1667
|
_sanitizeAttachedShadowRoots2(importedNode);
|
|
1422
1668
|
} else {
|
|
1423
1669
|
/* Exit directly if we have nothing to do */
|
|
1424
1670
|
if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT &&
|
|
1425
1671
|
// eslint-disable-next-line unicorn/prefer-includes
|
|
1426
1672
|
dirty.indexOf('<') === -1) {
|
|
1427
|
-
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ?
|
|
1673
|
+
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? _createTrustedHTML(dirty) : dirty;
|
|
1428
1674
|
}
|
|
1429
1675
|
/* Initialize the document to work on */
|
|
1430
1676
|
body = _initDocument(dirty);
|
|
@@ -1445,24 +1691,25 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1445
1691
|
_sanitizeElements(currentNode);
|
|
1446
1692
|
/* Check attributes next */
|
|
1447
1693
|
_sanitizeAttributes(currentNode);
|
|
1448
|
-
/* Shadow DOM detected, sanitize it
|
|
1449
|
-
|
|
1694
|
+
/* Shadow DOM detected, sanitize it.
|
|
1695
|
+
Realm-safe check (GHSA-hpcv-96wg-7vj8): nodeType-based detection
|
|
1696
|
+
instead of instanceof, so foreign-realm <template>.content is
|
|
1697
|
+
walked correctly. */
|
|
1698
|
+
if (_isDocumentFragment(currentNode.content)) {
|
|
1450
1699
|
_sanitizeShadowDOM2(currentNode.content);
|
|
1451
1700
|
}
|
|
1452
1701
|
}
|
|
1453
1702
|
/* If we sanitized `dirty` in-place, return it. */
|
|
1454
1703
|
if (IN_PLACE) {
|
|
1704
|
+
if (SAFE_FOR_TEMPLATES) {
|
|
1705
|
+
_scrubTemplateExpressions2(dirty);
|
|
1706
|
+
}
|
|
1455
1707
|
return dirty;
|
|
1456
1708
|
}
|
|
1457
1709
|
/* Return sanitized string or DOM */
|
|
1458
1710
|
if (RETURN_DOM) {
|
|
1459
1711
|
if (SAFE_FOR_TEMPLATES) {
|
|
1460
|
-
body
|
|
1461
|
-
let html = body.innerHTML;
|
|
1462
|
-
arrayForEach([MUSTACHE_EXPR$1, ERB_EXPR$1, TMPLIT_EXPR$1], expr => {
|
|
1463
|
-
html = stringReplace(html, expr, ' ');
|
|
1464
|
-
});
|
|
1465
|
-
body.innerHTML = html;
|
|
1712
|
+
_scrubTemplateExpressions2(body);
|
|
1466
1713
|
}
|
|
1467
1714
|
if (RETURN_DOM_FRAGMENT) {
|
|
1468
1715
|
returnNode = createDocumentFragment.call(body.ownerDocument);
|
|
@@ -1496,7 +1743,7 @@ var purify = _commonjsHelpers.createCommonjsModule(function (module, exports) {
|
|
|
1496
1743
|
serializedHTML = stringReplace(serializedHTML, expr, ' ');
|
|
1497
1744
|
});
|
|
1498
1745
|
}
|
|
1499
|
-
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ?
|
|
1746
|
+
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? _createTrustedHTML(serializedHTML) : serializedHTML;
|
|
1500
1747
|
};
|
|
1501
1748
|
DOMPurify.setConfig = function () {
|
|
1502
1749
|
let cfg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|