Skip to content

Commit 0e98856

Browse files
Scheduler - Extract ESLint allowlist to separate file
1 parent d47eb48 commit 0e98856

2 files changed

Lines changed: 153 additions & 152 deletions

File tree

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
const schedulerDOMComponentOverrides = [
2+
'_createActionByOption',
3+
'_defaultOptionsRules',
4+
'_dimensionChanged',
5+
'_dispose',
6+
'_disposed',
7+
'_getDefaultOptions',
8+
'_init',
9+
'_initTemplates',
10+
'_optionChanged',
11+
'_setOptionsByReference',
12+
'_useTemplates',
13+
'_visibilityChanged',
14+
];
15+
16+
const schedulerWidgetOverrides = [
17+
'_activeStateUnit',
18+
'_clean',
19+
'_cleanFocusState',
20+
'_eventBindingTarget',
21+
'_fireContentReadyAction',
22+
'_focusInHandler',
23+
'_focusOutHandler',
24+
'_focusTarget',
25+
'_initMarkup',
26+
'_keyboardHandler',
27+
'_render',
28+
'_renderContent',
29+
'_renderFocusState',
30+
'_renderFocusTarget',
31+
'_supportedKeys',
32+
'_toggleVisibility',
33+
];
34+
35+
const schedulerCollectionWidgetOverrides = [
36+
'_cleanItemContainer',
37+
'_clearDropDownItemsElements',
38+
'_createItemByTemplate',
39+
'_executeItemRenderAction',
40+
'_filteredItems',
41+
'_findItemElementByItem',
42+
'_focusedItemIndexBeforeRender',
43+
'_getItemContent',
44+
'_itemClass',
45+
'_itemClickHandler',
46+
'_itemContainer',
47+
'_moveFocus',
48+
'_postprocessRenderItem',
49+
'_processItemClick',
50+
'_refreshActiveDescendant',
51+
'_renderDirection',
52+
'_renderItem',
53+
'_sortedItems',
54+
];
55+
56+
const schedulerR1Overrides = [
57+
'_propsInfo',
58+
'_value',
59+
'_viewComponent',
60+
];
61+
62+
const schedulerWorkspaceOverrides = [
63+
'_getCellCount',
64+
'_getGroupCount',
65+
'_isHorizontalGroupedWorkSpace',
66+
];
67+
68+
const schedulerLegacyMembers = [
69+
'_$allDayIndicator',
70+
'_$allDayPanel',
71+
'_$bottomShader',
72+
'_$container',
73+
'_$dateTable',
74+
'_$dateTableScrollableContent',
75+
'_$flexContainer',
76+
'_$groupTable',
77+
'_$headerPanel',
78+
'_$headerPanelContainer',
79+
'_$mainGroup',
80+
'_$recurrenceGroup',
81+
'_$shader',
82+
'_$thead',
83+
'_$topShader',
84+
'_addEvent',
85+
'_appointmentTooltipOffset',
86+
'_appointments',
87+
'_calculateCellIndex',
88+
'_callEvent',
89+
'_compactAppointmentsHelper',
90+
'_createAction',
91+
'_createEventArgs',
92+
'_createEventMap',
93+
'_createOverlayContent',
94+
'_createScrollable',
95+
'_createToolbarConfig',
96+
'_dataAccessors',
97+
'_dataSource',
98+
'_dataSourceChangedHandler',
99+
'_dataSourceOptions',
100+
'_dateTableScrollable',
101+
'_draggingMode',
102+
'_dxForm',
103+
'_getCalendarOptionUpdater',
104+
'_getCalendarOptions',
105+
'_getCaption',
106+
'_getCaptionOptions',
107+
'_getDragBehavior',
108+
'_getMaxAllowedVerticalPosition',
109+
'_getNextDate',
110+
'_groupPanelItems',
111+
'_groupedStrategy',
112+
'_ignorePreventScrollEventsDeprecation',
113+
'_isAppointmentBeingUpdated',
114+
'_isMobileLayout',
115+
'_isScrollOptionsObject',
116+
'_layoutManager',
117+
'_options',
118+
'_parseItem',
119+
'_popup',
120+
'_readOnly',
121+
'_recurrenceForm',
122+
'_renderAppointmentTemplate',
123+
'_renderCalendar',
124+
'_renderGrid',
125+
'_renderOverlay',
126+
'_renderToolbar',
127+
'_shader',
128+
'_showCalendar',
129+
'_sidebarScrollable',
130+
'_textCache',
131+
'_timeZoneCalculator',
132+
'_updateCalendarValueAndCurrentDate',
133+
'_updateCurrentDate',
134+
'_updateCurrentView',
135+
'_updateDateByDirection',
136+
'_useShortDateFormat',
137+
'_weekDayButtons',
138+
'_workSpace',
139+
'_wrapperClassExternal',
140+
];
141+
142+
const schedulerMemberAllowlist = [
143+
...schedulerDOMComponentOverrides,
144+
...schedulerWidgetOverrides,
145+
...schedulerCollectionWidgetOverrides,
146+
...schedulerR1Overrides,
147+
...schedulerWorkspaceOverrides,
148+
...schedulerLegacyMembers,
149+
];
150+
151+
export const schedulerMemberAllowlistRegex =
152+
`^(_|__esModule|${schedulerMemberAllowlist.map(s => s.replace(/\$/g, '\\$')).join('|')})$`;

packages/devextreme/eslint.config.mjs

Lines changed: 1 addition & 152 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import customRules from './eslint_plugins/index.js';
1717
import spellCheckConfig from 'eslint-config-devextreme/spell-check';
1818
import typescriptConfig from 'eslint-config-devextreme/typescript';
1919
import qunitConfig from 'eslint-config-devextreme/qunit';
20+
import { schedulerMemberAllowlistRegex } from './eslint-scheduler-allowlist.mjs';
2021

2122
const __filename = fileURLToPath(import.meta.url);
2223
const __dirname = path.dirname(__filename);
@@ -26,158 +27,6 @@ const compat = new FlatCompat({
2627
allConfig: js.configs.all
2728
});
2829

29-
const schedulerDOMComponentOverrides = [
30-
'_createActionByOption',
31-
'_defaultOptionsRules',
32-
'_dimensionChanged',
33-
'_dispose',
34-
'_disposed',
35-
'_getDefaultOptions',
36-
'_init',
37-
'_initTemplates',
38-
'_optionChanged',
39-
'_setOptionsByReference',
40-
'_useTemplates',
41-
'_visibilityChanged',
42-
];
43-
44-
const schedulerWidgetOverrides = [
45-
'_activeStateUnit',
46-
'_clean',
47-
'_cleanFocusState',
48-
'_eventBindingTarget',
49-
'_fireContentReadyAction',
50-
'_focusInHandler',
51-
'_focusOutHandler',
52-
'_focusTarget',
53-
'_initMarkup',
54-
'_keyboardHandler',
55-
'_render',
56-
'_renderContent',
57-
'_renderFocusState',
58-
'_renderFocusTarget',
59-
'_supportedKeys',
60-
'_toggleVisibility',
61-
];
62-
63-
const schedulerCollectionWidgetOverrides = [
64-
'_cleanItemContainer',
65-
'_clearDropDownItemsElements',
66-
'_createItemByTemplate',
67-
'_executeItemRenderAction',
68-
'_filteredItems',
69-
'_findItemElementByItem',
70-
'_focusedItemIndexBeforeRender',
71-
'_getItemContent',
72-
'_itemClass',
73-
'_itemClickHandler',
74-
'_itemContainer',
75-
'_moveFocus',
76-
'_postprocessRenderItem',
77-
'_processItemClick',
78-
'_refreshActiveDescendant',
79-
'_renderDirection',
80-
'_renderItem',
81-
'_sortedItems',
82-
];
83-
84-
const schedulerR1Overrides = [
85-
'_propsInfo',
86-
'_value',
87-
'_viewComponent',
88-
];
89-
90-
const schedulerWorkspaceOverrides = [
91-
'_getCellCount',
92-
'_getGroupCount',
93-
'_isHorizontalGroupedWorkSpace',
94-
];
95-
96-
const schedulerLegacyMembers = [
97-
'_$allDayIndicator',
98-
'_$allDayPanel',
99-
'_$bottomShader',
100-
'_$container',
101-
'_$dateTable',
102-
'_$dateTableScrollableContent',
103-
'_$flexContainer',
104-
'_$groupTable',
105-
'_$headerPanel',
106-
'_$headerPanelContainer',
107-
'_$mainGroup',
108-
'_$recurrenceGroup',
109-
'_$shader',
110-
'_$thead',
111-
'_$topShader',
112-
'_addEvent',
113-
'_appointmentTooltipOffset',
114-
'_appointments',
115-
'_calculateCellIndex',
116-
'_callEvent',
117-
'_compactAppointmentsHelper',
118-
'_createAction',
119-
'_createEventArgs',
120-
'_createEventMap',
121-
'_createOverlayContent',
122-
'_createScrollable',
123-
'_createToolbarConfig',
124-
'_dataAccessors',
125-
'_dataSource',
126-
'_dataSourceChangedHandler',
127-
'_dataSourceOptions',
128-
'_dateTableScrollable',
129-
'_draggingMode',
130-
'_dxForm',
131-
'_getCalendarOptionUpdater',
132-
'_getCalendarOptions',
133-
'_getCaption',
134-
'_getCaptionOptions',
135-
'_getDragBehavior',
136-
'_getMaxAllowedVerticalPosition',
137-
'_getNextDate',
138-
'_groupPanelItems',
139-
'_groupedStrategy',
140-
'_ignorePreventScrollEventsDeprecation',
141-
'_isAppointmentBeingUpdated',
142-
'_isMobileLayout',
143-
'_isScrollOptionsObject',
144-
'_layoutManager',
145-
'_options',
146-
'_parseItem',
147-
'_popup',
148-
'_readOnly',
149-
'_recurrenceForm',
150-
'_renderAppointmentTemplate',
151-
'_renderCalendar',
152-
'_renderGrid',
153-
'_renderOverlay',
154-
'_renderToolbar',
155-
'_shader',
156-
'_showCalendar',
157-
'_sidebarScrollable',
158-
'_textCache',
159-
'_timeZoneCalculator',
160-
'_updateCalendarValueAndCurrentDate',
161-
'_updateCurrentDate',
162-
'_updateCurrentView',
163-
'_updateDateByDirection',
164-
'_useShortDateFormat',
165-
'_weekDayButtons',
166-
'_workSpace',
167-
'_wrapperClassExternal',
168-
];
169-
170-
const schedulerMemberAllowlist = [
171-
...schedulerDOMComponentOverrides,
172-
...schedulerWidgetOverrides,
173-
...schedulerCollectionWidgetOverrides,
174-
...schedulerR1Overrides,
175-
...schedulerWorkspaceOverrides,
176-
...schedulerLegacyMembers,
177-
];
178-
const schedulerMemberAllowlistRegex =
179-
`^(_|__esModule|${schedulerMemberAllowlist.map(s => s.replace(/\$/g, '\\$')).join('|')})$`;
180-
18130
export default [
18231
{
18332
ignores: [

0 commit comments

Comments
 (0)