From b11536b47b3a67b5a3d169c7fc3a98fda1602acd Mon Sep 17 00:00:00 2001 From: Rene Haas Date: Thu, 1 Aug 2024 11:59:05 +0200 Subject: [PATCH] remove tilde imports --- local/config/src/playwright.js | 9 --- local/playwright-tooling/package.json | 4 +- ...collectCoverage.cjs => collectCoverage.js} | 10 ++- .../{expectSuccess.cjs => expectSuccess.js} | 4 +- local/playwright-tooling/src/index.cjs | 7 -- local/playwright-tooling/src/index.js | 2 + ...aywrightRollup.cjs => playwrightRollup.js} | 12 +-- packages/overlayscrollbars/package.json | 1 + packages/overlayscrollbars/src/environment.ts | 14 ++-- .../overlayscrollbars/src/eventListeners.ts | 6 +- packages/overlayscrollbars/src/index.ts | 12 +-- .../overlayscrollbars/src/initialization.ts | 32 ++++---- packages/overlayscrollbars/src/instances.ts | 2 +- .../src/observers/domObserver.ts | 4 +- .../src/observers/sizeObserver.ts | 8 +- .../src/observers/trinsicObserver.ts | 10 +-- packages/overlayscrollbars/src/options.ts | 46 ++++++----- .../src/overlayscrollbars.ts | 62 +++++++------- .../clickScrollPlugin/clickScrollPlugin.ts | 4 +- .../optionsValidationPlugin.ts | 4 +- .../optionsValidationPlugin/transformation.ts | 12 +-- .../optionsValidationPlugin/validation.ts | 12 +-- .../overlayscrollbars/src/plugins/plugins.ts | 42 +++++----- .../scrollbarsHidingPlugin.ts | 24 +++--- .../sizeObserverPlugin/sizeObserverPlugin.ts | 6 +- .../setups/observersSetup/observersSetup.ts | 38 ++++----- .../scrollbarsSetup.elements.ts | 81 +++++++++---------- .../scrollbarsSetup/scrollbarsSetup.events.ts | 30 +++---- .../setups/scrollbarsSetup/scrollbarsSetup.ts | 52 ++++++------ .../overlayscrollbars/src/setups/setups.ts | 24 +++--- .../structureSetup/structureSetup.elements.ts | 20 ++--- .../setups/structureSetup/structureSetup.ts | 28 +++---- .../structureSetup/structureSetup.utils.ts | 10 +-- .../updateSegments/overflowUpdateSegment.ts | 16 ++-- .../updateSegments/paddingUpdateSegment.ts | 8 +- .../updateSegments/trinsicUpdateSegment.ts | 2 +- .../src/support/dom/style.ts | 6 +- .../src/support/utils/array.ts | 2 +- .../src/support/utils/equal.ts | 2 +- .../src/support/utils/object.ts | 16 ++-- .../src/support/utils/types.ts | 2 +- .../test/{playwright => }/package.json | 1 + .../structureSetup/update/index.browser.ts | 52 +++++++----- packages/overlayscrollbars/test/tsconfig.json | 10 +++ packages/overlayscrollbars/tsconfig.json | 5 +- .../overlayscrollbars/tsconfig.types.json | 9 +++ 46 files changed, 389 insertions(+), 374 deletions(-) rename local/playwright-tooling/src/{collectCoverage.cjs => collectCoverage.js} (54%) rename local/playwright-tooling/src/{expectSuccess.cjs => expectSuccess.js} (87%) delete mode 100644 local/playwright-tooling/src/index.cjs create mode 100644 local/playwright-tooling/src/index.js rename local/playwright-tooling/src/{playwrightRollup.cjs => playwrightRollup.js} (88%) rename packages/overlayscrollbars/test/{playwright => }/package.json (69%) create mode 100644 packages/overlayscrollbars/test/tsconfig.json create mode 100644 packages/overlayscrollbars/tsconfig.types.json diff --git a/local/config/src/playwright.js b/local/config/src/playwright.js index 03bcd006..832cbf92 100644 --- a/local/config/src/playwright.js +++ b/local/config/src/playwright.js @@ -10,15 +10,6 @@ export default { fullyParallel: true, reporter: 'list', outputDir: '.playwright', - build: { - // external: [ - // 'local/playwright-tooling/**/*', - // 'local/config/**/*', - // 'local/rollup/**/*', - // 'local/esbuild/**/*', - // 'scrollSnap/**/*', - // ], - }, projects: [ { name: 'Chromium', diff --git a/local/playwright-tooling/package.json b/local/playwright-tooling/package.json index b92cd509..cfccc248 100644 --- a/local/playwright-tooling/package.json +++ b/local/playwright-tooling/package.json @@ -2,8 +2,8 @@ "name": "@~local/playwright-tooling", "private": true, "type": "module", - "main": "./src/index.cjs", - "module": "./src/index.cjs", + "main": "./src/index.js", + "module": "./src/index.js", "bin": { "playwright-merge-coverage": "./bin/mergeCoverage.js" }, diff --git a/local/playwright-tooling/src/collectCoverage.cjs b/local/playwright-tooling/src/collectCoverage.js similarity index 54% rename from local/playwright-tooling/src/collectCoverage.cjs rename to local/playwright-tooling/src/collectCoverage.js index 6ef7cc96..9a514d2e 100644 --- a/local/playwright-tooling/src/collectCoverage.cjs +++ b/local/playwright-tooling/src/collectCoverage.js @@ -1,8 +1,10 @@ -const fs = require('fs'); -const { basename, dirname, join } = require('path'); +import fs from 'node:fs'; +import { basename, dirname, join } from 'node:path'; +import playwrightCoverageConfig from '@~local/config/playwright.coverage'; -module.exports = async (coverageOutputDir, coverage, testfile) => { - const { tmpCoverageDirectory } = (await import('@~local/config/playwright.coverage')).default; +const { tmpCoverageDirectory } = playwrightCoverageConfig; + +export default async (coverageOutputDir, coverage, testfile) => { if (coverage) { // eslint-disable-next-line no-restricted-syntax const coveragePath = join( diff --git a/local/playwright-tooling/src/expectSuccess.cjs b/local/playwright-tooling/src/expectSuccess.js similarity index 87% rename from local/playwright-tooling/src/expectSuccess.cjs rename to local/playwright-tooling/src/expectSuccess.js index 53aa3889..78001b68 100644 --- a/local/playwright-tooling/src/expectSuccess.cjs +++ b/local/playwright-tooling/src/expectSuccess.js @@ -1,4 +1,4 @@ -const { expect } = require('@playwright/test'); +import { expect } from '@playwright/test'; const startSelector = '#start'; const resultSelector = '#testResult'; @@ -9,7 +9,7 @@ const logError = async (page, ...args) => { }; // default timeout = // 15mins -module.exports = async (page, timeout = 10 * 60 * 1500) => { +export default async (page, timeout = 10 * 60 * 1500) => { page.on('pageerror', (err) => { logError(page, err.message); }); diff --git a/local/playwright-tooling/src/index.cjs b/local/playwright-tooling/src/index.cjs deleted file mode 100644 index 46389070..00000000 --- a/local/playwright-tooling/src/index.cjs +++ /dev/null @@ -1,7 +0,0 @@ -const playwrightRollup = require('./playwrightRollup'); -const expectSuccess = require('./expectSuccess'); - -module.exports = { - playwrightRollup, - expectSuccess, -}; diff --git a/local/playwright-tooling/src/index.js b/local/playwright-tooling/src/index.js new file mode 100644 index 00000000..2b516c00 --- /dev/null +++ b/local/playwright-tooling/src/index.js @@ -0,0 +1,2 @@ +export { default as playwrightRollup } from './playwrightRollup.js'; +export { default as expectSuccess } from './expectSuccess.js'; diff --git a/local/playwright-tooling/src/playwrightRollup.cjs b/local/playwright-tooling/src/playwrightRollup.js similarity index 88% rename from local/playwright-tooling/src/playwrightRollup.cjs rename to local/playwright-tooling/src/playwrightRollup.js index a0869444..ea7a3562 100644 --- a/local/playwright-tooling/src/playwrightRollup.cjs +++ b/local/playwright-tooling/src/playwrightRollup.js @@ -1,10 +1,10 @@ -const { dirname } = require('path'); -const { watch: rollupWatch } = require('rollup'); -const { test } = require('@playwright/test'); -const collectCoverage = require('./collectCoverage'); +import { dirname } from 'node:path'; +import { watch as rollupWatch } from 'rollup'; +import { test } from '@playwright/test'; +import createPlaywrightRollupConfig from '@~local/rollup/playwright'; +import collectCoverage from './collectCoverage.js'; const createRollupBundle = async (testDir, useEsbuild, dev) => { - const createPlaywrightRollupConfig = (await import('@~local/rollup/playwright')).default; const [config, getServer] = await createPlaywrightRollupConfig(testDir, useEsbuild, dev); const watcher = rollupWatch(config); @@ -53,7 +53,7 @@ const createRollupBundle = async (testDir, useEsbuild, dev) => { }; }; -module.exports = (options) => { +export default (options) => { const { useEsbuild = true, adaptUrl = (originalUrl) => originalUrl } = options || {}; let url; let close; diff --git a/packages/overlayscrollbars/package.json b/packages/overlayscrollbars/package.json index 87fb20b6..1c6eb1d3 100644 --- a/packages/overlayscrollbars/package.json +++ b/packages/overlayscrollbars/package.json @@ -52,6 +52,7 @@ }, "scripts": { "build": "rollup -c", + "types": "tsc --emitDeclarationOnly -p tsconfig.types.json", "test": "jest --coverage", "e2e": "playwright test", "e2e:dev": "playwright test --workers 1 --timeout 0 --global-timeout 0", diff --git a/packages/overlayscrollbars/src/environment.ts b/packages/overlayscrollbars/src/environment.ts index 1f801548..0e3098d3 100644 --- a/packages/overlayscrollbars/src/environment.ts +++ b/packages/overlayscrollbars/src/environment.ts @@ -1,3 +1,9 @@ +import type { XY, EventListener } from './support'; +import type { Options, PartialOptions } from './options'; +import type { Initialization, PartialInitialization } from './initialization'; +import type { StyleObjectKey } from './typings'; +import { defaultOptions } from './options'; +import { classNameEnvironment, classNameEnvironmentScrollbarHidden } from './classnames'; import { createDOM, addClass, @@ -18,13 +24,7 @@ import { isBodyElement, isFunction, addEventListener, -} from '~/support'; -import { classNameEnvironment, classNameEnvironmentScrollbarHidden } from '~/classnames'; -import { defaultOptions } from '~/options'; -import type { XY, EventListener } from '~/support'; -import type { Options, PartialOptions } from '~/options'; -import type { Initialization, PartialInitialization } from '~/initialization'; -import type { StyleObjectKey } from './typings'; +} from './support'; import { getNonce } from './nonce'; type EnvironmentEventArgs = { diff --git a/packages/overlayscrollbars/src/eventListeners.ts b/packages/overlayscrollbars/src/eventListeners.ts index f86b95db..bf5d58d8 100644 --- a/packages/overlayscrollbars/src/eventListeners.ts +++ b/packages/overlayscrollbars/src/eventListeners.ts @@ -1,12 +1,12 @@ -import type { OverlayScrollbars } from '~/overlayscrollbars'; -import type { PartialOptions } from '~/options'; +import type { OverlayScrollbars } from './overlayscrollbars'; +import type { PartialOptions } from './options'; import type { EventListeners as GeneralEventListeners, EventListener as GeneralEventListener, AddEvent as GeneralAddEvent, RemoveEvent as GeneralRemoveEvent, TriggerEvent as GeneralTriggerEvent, -} from '~/support'; +} from './support'; /** * Describes the changes that happend due to an update. diff --git a/packages/overlayscrollbars/src/index.ts b/packages/overlayscrollbars/src/index.ts index 5f4e6efb..fbaf66f2 100644 --- a/packages/overlayscrollbars/src/index.ts +++ b/packages/overlayscrollbars/src/index.ts @@ -7,8 +7,8 @@ export { State, CloneableScrollbarElements, ScrollbarElements, -} from '~/overlayscrollbars'; -export { ScrollbarsHidingPlugin, SizeObserverPlugin, ClickScrollPlugin } from '~/plugins'; +} from './overlayscrollbars'; +export { ScrollbarsHidingPlugin, SizeObserverPlugin, ClickScrollPlugin } from './plugins'; export type { Options, @@ -17,13 +17,13 @@ export type { OverflowBehavior, ScrollbarsVisibilityBehavior, ScrollbarsAutoHideBehavior, -} from '~/options'; +} from './options'; export type { EventListener, EventListeners, EventListenerArgs, OnUpdatedEventListenerArgs, -} from '~/eventListeners'; +} from './eventListeners'; export type { Initialization, PartialInitialization, @@ -34,7 +34,7 @@ export type { DynamicInitialization, StaticInitializationElement, DynamicInitializationElement, -} from '~/initialization'; +} from './initialization'; export type { PluginModuleInstance, PluginModule, @@ -44,4 +44,4 @@ export type { InstancePluginEvent, InferStaticPluginModuleInstance, InferInstancePluginModuleInstance, -} from '~/plugins'; +} from './plugins'; diff --git a/packages/overlayscrollbars/src/initialization.ts b/packages/overlayscrollbars/src/initialization.ts index 4e8237e4..2ed59058 100644 --- a/packages/overlayscrollbars/src/initialization.ts +++ b/packages/overlayscrollbars/src/initialization.ts @@ -1,19 +1,19 @@ -import { isFunction, isHTMLElement, isNull, isUndefined } from '~/support'; -import { getEnvironment } from '~/environment'; -import type { DeepPartial } from '~/typings'; - -type FallbackStaticInitializtationElement = Extract< - StaticInitializationElement, - (...args: Args) => any -> extends (...args: infer P) => any - ? (...args: P) => HTMLElement - : never; -type FallbackDynamicInitializtationElement = Extract< - DynamicInitializationElement, - (...args: Args) => any -> extends (...args: infer P) => any - ? (...args: P) => HTMLElement - : never; +import type { DeepPartial } from './typings'; +import { isFunction, isHTMLElement, isNull, isUndefined } from './support'; +import { getEnvironment } from './environment'; + +type FallbackStaticInitializtationElement = + Extract, (...args: Args) => any> extends ( + ...args: infer P + ) => any + ? (...args: P) => HTMLElement + : never; +type FallbackDynamicInitializtationElement = + Extract, (...args: Args) => any> extends ( + ...args: infer P + ) => any + ? (...args: P) => HTMLElement + : never; export type StaticInitialization = HTMLElement | false | null; export type DynamicInitialization = HTMLElement | boolean | null; diff --git a/packages/overlayscrollbars/src/instances.ts b/packages/overlayscrollbars/src/instances.ts index 1d0f3b96..97dd8e73 100644 --- a/packages/overlayscrollbars/src/instances.ts +++ b/packages/overlayscrollbars/src/instances.ts @@ -1,4 +1,4 @@ -import type { OverlayScrollbars } from '~/overlayscrollbars'; +import type { OverlayScrollbars } from './overlayscrollbars'; const targetInstanceMap: WeakMap = new WeakMap(); diff --git a/packages/overlayscrollbars/src/observers/domObserver.ts b/packages/overlayscrollbars/src/observers/domObserver.ts index e34159c7..fc99645f 100644 --- a/packages/overlayscrollbars/src/observers/domObserver.ts +++ b/packages/overlayscrollbars/src/observers/domObserver.ts @@ -15,7 +15,7 @@ import { concat, getAttr, isString, -} from '~/support'; +} from '../support'; type DOMContentObserverCallback = (contentChangedThroughEvent: boolean) => any; @@ -77,7 +77,7 @@ export type DOMObserverOptions = ContentObserve export type DOMObserver = [ construct: () => () => void, - update: () => void | false | Parameters> + update: () => void | false | Parameters>, ]; type EventContentChangeUpdateElement = ( diff --git a/packages/overlayscrollbars/src/observers/sizeObserver.ts b/packages/overlayscrollbars/src/observers/sizeObserver.ts index 6f1419a2..029b7805 100644 --- a/packages/overlayscrollbars/src/observers/sizeObserver.ts +++ b/packages/overlayscrollbars/src/observers/sizeObserver.ts @@ -1,3 +1,4 @@ +import type { SizeObserverPlugin } from '../plugins'; import { createCache, createDOM, @@ -12,14 +13,13 @@ import { noop, domRectAppeared, concat, -} from '~/support'; +} from '../support'; import { classNameSizeObserver, classNameSizeObserverAppear, classNameSizeObserverListener, -} from '~/classnames'; -import { getStaticPluginModuleInstance, sizeObserverPluginName } from '~/plugins'; -import type { SizeObserverPlugin } from '~/plugins'; +} from '../classnames'; +import { getStaticPluginModuleInstance, sizeObserverPluginName } from '../plugins'; export interface SizeObserverOptions { /** Whether appearing should be observed. */ diff --git a/packages/overlayscrollbars/src/observers/trinsicObserver.ts b/packages/overlayscrollbars/src/observers/trinsicObserver.ts index 57b2fc27..b064b9c0 100644 --- a/packages/overlayscrollbars/src/observers/trinsicObserver.ts +++ b/packages/overlayscrollbars/src/observers/trinsicObserver.ts @@ -1,3 +1,6 @@ +import type { WH, CacheValues } from '../support'; +import { createSizeObserver } from './sizeObserver'; +import { classNameTrinsicObserver } from '../classnames'; import { createDiv, getOffsetSize, @@ -7,15 +10,12 @@ import { IntersectionObserverConstructor, appendChildren, bind, -} from '~/support'; -import { createSizeObserver } from '~/observers/sizeObserver'; -import { classNameTrinsicObserver } from '~/classnames'; -import type { WH, CacheValues } from '~/support'; +} from '../support'; export type TrinsicObserverCallback = (heightIntrinsic: CacheValues) => any; export type TrinsicObserver = [ construct: () => () => void, - update: () => void | false | null | undefined | Parameters + update: () => void | false | null | undefined | Parameters, ]; /** diff --git a/packages/overlayscrollbars/src/options.ts b/packages/overlayscrollbars/src/options.ts index c64b1c7c..eac47805 100644 --- a/packages/overlayscrollbars/src/options.ts +++ b/packages/overlayscrollbars/src/options.ts @@ -1,3 +1,4 @@ +import type { DeepPartial, DeepReadonly } from './typings'; import { assignDeep, each, @@ -8,8 +9,7 @@ import { isFunction, isEmptyObject, concat, -} from '~/support'; -import type { DeepPartial, DeepReadonly } from '~/typings'; +} from './support'; export type OptionsField = string; @@ -36,36 +36,36 @@ type OptionsObjectFieldNameTuples = T extends OptionsPrimitiveValue type JoinOptionsObjectFieldTuples< T extends OptionsField[], - IncompletePath extends boolean = false + IncompletePath extends boolean = false, > = T extends [infer F] ? F : T extends [infer F, ...infer R] - ? F extends OptionsField - ? - | (IncompletePath extends true ? F : never) - | `${F}.${JoinOptionsObjectFieldTuples>}` - : never - : OptionsField; + ? F extends OptionsField + ? + | (IncompletePath extends true ? F : never) + | `${F}.${JoinOptionsObjectFieldTuples>}` + : never + : OptionsField; type SplitJoinedOptionsObjectFieldTuples = string extends S ? OptionsField[] : S extends '' - ? [] - : S extends `${infer T}.${infer U}` - ? [T, ...SplitJoinedOptionsObjectFieldTuples] - : [S]; + ? [] + : S extends `${infer T}.${infer U}` + ? [T, ...SplitJoinedOptionsObjectFieldTuples] + : [S]; type OptionsObjectFieldTuplesType = T extends [infer F] ? F extends keyof O ? O[F] : never : T extends [infer F, ...infer R] - ? F extends keyof O - ? O[F] extends OptionsPrimitiveValue - ? O[F] - : OptionsObjectFieldTuplesType> - : never - : never; + ? F extends keyof O + ? O[F] extends OptionsPrimitiveValue + ? O[F] + : OptionsObjectFieldTuplesType> + : never + : never; type OptionsObjectFieldPath = JoinOptionsObjectFieldTuples< OptionsObjectFieldNameTuples, @@ -74,7 +74,7 @@ type OptionsObjectFieldPath = JoinOptionsObjectFieldTup type OptionsObjectFieldPathType< O extends OptionsObject, - P extends string + P extends string, > = OptionsObjectFieldTuplesType>; const opsStringify = (value: any) => @@ -289,5 +289,7 @@ export const createOptionCheck = changedOptions: DeepPartial, force?: boolean ): OptionsCheckFn => - (path) => - [getPropByPath(options, path), force || getPropByPath(changedOptions, path) !== undefined]; + (path) => [ + getPropByPath(options, path), + force || getPropByPath(changedOptions, path) !== undefined, + ]; diff --git a/packages/overlayscrollbars/src/overlayscrollbars.ts b/packages/overlayscrollbars/src/overlayscrollbars.ts index e06256cc..028d64f6 100644 --- a/packages/overlayscrollbars/src/overlayscrollbars.ts +++ b/packages/overlayscrollbars/src/overlayscrollbars.ts @@ -1,3 +1,33 @@ +import type { XY, TRBL } from './support'; +import type { Options, PartialOptions, ReadonlyOptions } from './options'; +import type { + InferInstancePluginModuleInstance, + InferStaticPluginModuleInstance, + InstancePlugin, + OptionsValidationPlugin, + Plugin, + PluginModuleInstance, + StaticPlugin, +} from './plugins'; +import type { Initialization, InitializationTarget, PartialInitialization } from './initialization'; +import type { OverflowStyle } from './typings'; +import type { EventListenerArgs, EventListener, EventListeners } from './eventListeners'; +import type { + ScrollbarsSetupElement, + ScrollbarStructure, +} from './setups/scrollbarsSetup/scrollbarsSetup.elements'; +import { + addPlugins, + getStaticPluginModuleInstance, + optionsValidationPluginModuleName, + pluginModules, + registerPluginModuleInstances, +} from './plugins'; +import { createSetups } from './setups'; +import { addInstance, getInstance, removeInstance } from './instances'; +import { cancelInitialization } from './initialization'; +import { getEnvironment } from './environment'; +import { getOptionsDiff } from './options'; import { assignDeep, isEmptyObject, @@ -11,37 +41,7 @@ import { runEachAndClear, bind, removeUndefinedProperties, -} from '~/support'; -import { getOptionsDiff } from '~/options'; -import { getEnvironment } from '~/environment'; -import { cancelInitialization } from '~/initialization'; -import { addInstance, getInstance, removeInstance } from '~/instances'; -import { createSetups } from '~/setups'; -import { - addPlugins, - getStaticPluginModuleInstance, - optionsValidationPluginModuleName, - pluginModules, - registerPluginModuleInstances, -} from '~/plugins'; -import type { XY, TRBL } from '~/support'; -import type { Options, PartialOptions, ReadonlyOptions } from '~/options'; -import type { - InferInstancePluginModuleInstance, - InferStaticPluginModuleInstance, - InstancePlugin, - OptionsValidationPlugin, - Plugin, - PluginModuleInstance, - StaticPlugin, -} from '~/plugins'; -import type { Initialization, InitializationTarget, PartialInitialization } from '~/initialization'; -import type { OverflowStyle } from '~/typings'; -import type { EventListenerArgs, EventListener, EventListeners } from '~/eventListeners'; -import type { - ScrollbarsSetupElement, - ScrollbarStructure, -} from '~/setups/scrollbarsSetup/scrollbarsSetup.elements'; +} from './support'; import { setNonce } from './nonce'; // Notes: diff --git a/packages/overlayscrollbars/src/plugins/clickScrollPlugin/clickScrollPlugin.ts b/packages/overlayscrollbars/src/plugins/clickScrollPlugin/clickScrollPlugin.ts index 94fe053c..2a19c0b8 100644 --- a/packages/overlayscrollbars/src/plugins/clickScrollPlugin/clickScrollPlugin.ts +++ b/packages/overlayscrollbars/src/plugins/clickScrollPlugin/clickScrollPlugin.ts @@ -1,5 +1,5 @@ -import { animateNumber, noop, selfClearTimeout } from '~/support'; -import type { StaticPlugin } from '~/plugins'; +import type { StaticPlugin } from '../plugins'; +import { animateNumber, noop, selfClearTimeout } from '../../support'; export const clickScrollPluginModuleName = '__osClickScrollPlugin'; diff --git a/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/optionsValidationPlugin.ts b/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/optionsValidationPlugin.ts index 6f45769c..d91fa482 100644 --- a/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/optionsValidationPlugin.ts +++ b/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/optionsValidationPlugin.ts @@ -5,9 +5,9 @@ import type { ScrollbarsVisibilityBehavior, ScrollbarsAutoHideBehavior, ScrollbarsClickScrollBehavior, -} from '~/options'; +} from '../../options'; import type { OptionsTemplate, OptionsTemplateValue } from './validation'; -import type { StaticPlugin } from '~/plugins'; +import type { StaticPlugin } from '../plugins'; import { validateOptions, optionsTemplateTypes as oTypes } from './validation'; export const optionsValidationPluginModuleName = '__osOptionsValidationPlugin'; diff --git a/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/transformation.ts b/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/transformation.ts index 7f35ffde..3fe0a519 100644 --- a/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/transformation.ts +++ b/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/transformation.ts @@ -1,12 +1,12 @@ -import { isArray, each } from '~/support'; -import type { OptionsObject } from '~/options'; +import type { OptionsObject } from '../../options'; import type { OptionsTemplate, OptionsTemplateNativeTypes, OptionsTemplateTypes, OptionsTemplateValue, } from './validation'; -import type { PlainObject } from '~/typings'; +import type { PlainObject } from '../../typings'; +import { isArray, each } from '../../support'; export interface OptionsWithOptionsTemplateTransformation { _template: OptionsTemplate; @@ -15,15 +15,15 @@ export interface OptionsWithOptionsTemplateTransformation { export type OptionsWithOptionsTemplateValue = [ T, - OptionsTemplateValue + OptionsTemplateValue, ]; export type OptionsWithOptionsTemplate = { [P in keyof T]: T[P] extends OptionsObject ? OptionsWithOptionsTemplate : T[P] extends OptionsTemplateNativeTypes - ? OptionsWithOptionsTemplateValue - : never; + ? OptionsWithOptionsTemplateValue + : never; }; /** diff --git a/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/validation.ts b/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/validation.ts index 8ca557a8..7bd8ca3d 100644 --- a/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/validation.ts +++ b/packages/overlayscrollbars/src/plugins/optionsValidationPlugin/validation.ts @@ -1,3 +1,5 @@ +import type { PlainObject, DeepPartial } from '../../typings'; +import type { OptionsObject } from '../../options'; import { each, hasOwnProperty, @@ -9,9 +11,7 @@ import { isPlainObject, isString, createOrKeepArray, -} from '~/support'; -import type { PlainObject, DeepPartial } from '~/typings'; -import type { OptionsObject } from '~/options'; +} from '../../support'; export type OptionsFunctionType = (this: any, ...args: any[]) => any; export type OptionsTemplateType = ExtractPropsKey< @@ -31,13 +31,13 @@ export type OptionsTemplate = { [P in keyof T]: T[P] extends OptionsObject ? OptionsTemplate : T[P] extends OptionsTemplateNativeTypes - ? OptionsTemplateValue - : never; + ? OptionsTemplateValue + : never; }; export type OptionsValidationResult = [ validated: DeepPartial, - foreign: Record + foreign: Record, ]; type OptionsTemplateTypeMap = { diff --git a/packages/overlayscrollbars/src/plugins/plugins.ts b/packages/overlayscrollbars/src/plugins/plugins.ts index 62eca5ed..f4c06227 100644 --- a/packages/overlayscrollbars/src/plugins/plugins.ts +++ b/packages/overlayscrollbars/src/plugins/plugins.ts @@ -1,6 +1,6 @@ -import { each, keys } from '~/support'; -import type { OverlayScrollbars, OverlayScrollbarsStatic } from '~/overlayscrollbars'; -import type { EventListener, EventListenerArgs, EventListeners } from '..'; +import type { OverlayScrollbars, OverlayScrollbarsStatic } from '../overlayscrollbars'; +import type { EventListener, EventListenerArgs, EventListeners } from '../eventListeners'; +import { each, keys } from '../support'; export type PluginModuleInstance = Record; @@ -33,7 +33,7 @@ export type InstancePluginEvent = { */ export type PluginModule< S extends PluginModuleInstance | void = PluginModuleInstance | void, - I extends PluginModuleInstance | void = PluginModuleInstance | void + I extends PluginModuleInstance | void = PluginModuleInstance | void, > = (S extends PluginModuleInstance ? { /** @@ -71,7 +71,7 @@ export type PluginModule< export type Plugin< Name extends string = string, S extends PluginModuleInstance | void = PluginModuleInstance | void, - I extends PluginModuleInstance | void = PluginModuleInstance | void + I extends PluginModuleInstance | void = PluginModuleInstance | void, > = { /** The field is the plugins name. Plugin names must be globally unique, please choose wisely. */ [pluginName in Name]: PluginModule; @@ -82,7 +82,7 @@ export type Plugin< */ export type StaticPlugin< Name extends string = string, - T extends PluginModuleInstance = PluginModuleInstance + T extends PluginModuleInstance = PluginModuleInstance, > = Plugin; /** @@ -90,30 +90,28 @@ export type StaticPlugin< */ export type InstancePlugin< Name extends string = string, - T extends PluginModuleInstance = PluginModuleInstance + T extends PluginModuleInstance = PluginModuleInstance, > = Plugin; /** * Infers the type of the static modules instance of the passed plugin. */ -export type InferStaticPluginModuleInstance = T extends StaticPlugin< - infer Name -> - ? T[Name]['static'] extends (...args: any[]) => any - ? ReturnType - : void - : void; +export type InferStaticPluginModuleInstance = + T extends StaticPlugin + ? T[Name]['static'] extends (...args: any[]) => any + ? ReturnType + : void + : void; /** * Infers the type of the instance modules instance of the passed plugin. */ -export type InferInstancePluginModuleInstance = T extends InstancePlugin< - infer Name -> - ? T[Name]['instance'] extends (...args: any[]) => any - ? ReturnType - : void - : void; +export type InferInstancePluginModuleInstance = + T extends InstancePlugin + ? T[Name]['instance'] extends (...args: any[]) => any + ? ReturnType + : void + : void; /** All registered plugin modules. */ export const pluginModules: Record = {}; @@ -140,7 +138,7 @@ export const registerPluginModuleInstances = ( instanceInfo?: [ instanceObj: OverlayScrollbars, event: InstancePluginEvent, - instancePluginMap?: Record + instancePluginMap?: Record, ] ): Array => keys(plugin).map((name) => { diff --git a/packages/overlayscrollbars/src/plugins/scrollbarsHidingPlugin/scrollbarsHidingPlugin.ts b/packages/overlayscrollbars/src/plugins/scrollbarsHidingPlugin/scrollbarsHidingPlugin.ts index b7fded58..7474e99b 100644 --- a/packages/overlayscrollbars/src/plugins/scrollbarsHidingPlugin/scrollbarsHidingPlugin.ts +++ b/packages/overlayscrollbars/src/plugins/scrollbarsHidingPlugin/scrollbarsHidingPlugin.ts @@ -1,3 +1,14 @@ +import type { ObserversSetupState } from '../../setups'; +import type { Options, OptionsCheckFn } from '../../options'; +import type { StructureSetupElementsObj } from '../../setups/structureSetup/structureSetup.elements'; +import type { ViewportOverflowState } from '../../setups/structureSetup/structureSetup.utils'; +import type { Env } from '../../environment'; +import type { WH } from '../../support'; +import type { OverflowStyle, StyleObject, StyleObjectKey } from '../../typings'; +import type { StructureSetupState } from '../../setups/structureSetup'; +import type { StaticPlugin } from '../plugins'; +import { getShowNativeOverlaidScrollbars } from '../../setups/structureSetup/structureSetup.utils'; +import { dataValueViewportArrange, dataAttributeViewport } from '../../classnames'; import { keys, noop, @@ -17,18 +28,7 @@ import { strOverflowY, strOverflowX, strScroll, -} from '~/support'; -import { dataValueViewportArrange, dataAttributeViewport } from '~/classnames'; -import { getShowNativeOverlaidScrollbars } from '~/setups/structureSetup/structureSetup.utils'; -import type { ObserversSetupState } from '~/setups'; -import type { Options, OptionsCheckFn } from '~/options'; -import type { StructureSetupElementsObj } from '~/setups/structureSetup/structureSetup.elements'; -import type { ViewportOverflowState } from '~/setups/structureSetup/structureSetup.utils'; -import type { Env } from '~/environment'; -import type { WH } from '~/support'; -import type { OverflowStyle, StyleObject, StyleObjectKey } from '~/typings'; -import type { StructureSetupState } from '~/setups/structureSetup'; -import type { StaticPlugin } from '~/plugins'; +} from '../../support'; export const scrollbarsHidingPluginName = '__osScrollbarsHidingPlugin'; diff --git a/packages/overlayscrollbars/src/plugins/sizeObserverPlugin/sizeObserverPlugin.ts b/packages/overlayscrollbars/src/plugins/sizeObserverPlugin/sizeObserverPlugin.ts index 1c203c73..0dee78f8 100644 --- a/packages/overlayscrollbars/src/plugins/sizeObserverPlugin/sizeObserverPlugin.ts +++ b/packages/overlayscrollbars/src/plugins/sizeObserverPlugin/sizeObserverPlugin.ts @@ -1,3 +1,4 @@ +import type { StaticPlugin } from '../plugins'; import { createDOM, appendChildren, @@ -13,13 +14,12 @@ import { strWidth, strHeight, setStyles, -} from '~/support'; +} from '../../support'; import { classNameSizeObserverListenerScroll, classNameSizeObserverListenerItem, classNameSizeObserverListenerItemFinal, -} from '~/classnames'; -import type { StaticPlugin } from '../plugins'; +} from '../../classnames'; export const sizeObserverPluginName = '__osSizeObserverPlugin'; diff --git a/packages/overlayscrollbars/src/setups/observersSetup/observersSetup.ts b/packages/overlayscrollbars/src/setups/observersSetup/observersSetup.ts index 848e1b25..34fc45ce 100644 --- a/packages/overlayscrollbars/src/setups/observersSetup/observersSetup.ts +++ b/packages/overlayscrollbars/src/setups/observersSetup/observersSetup.ts @@ -1,3 +1,21 @@ +import type { Options, OptionsCheckFn } from '../../options'; +import type { ScrollbarsHidingPlugin } from '../../plugins'; +import type { SizeObserverCallbackParams } from '../../observers'; +import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; +import type { Setup, SetupUpdateInfo, StructureSetupState } from '../../setups'; +import type { CacheValues, WH } from '../../support'; +import type { PlainObject } from '../../typings'; +import { getStaticPluginModuleInstance, scrollbarsHidingPluginName } from '../../plugins'; +import { + classNameScrollbar, + dataAttributeHost, + dataAttributeViewport, + dataValueViewportMeasuring, + dataValueViewportArrange, + dataValueNoClipping, +} from '../../classnames'; +import { getEnvironment } from '../../environment'; +import { createDOMObserver, createSizeObserver, createTrinsicObserver } from '../../observers'; import { ResizeObserverConstructor, assignDeep, @@ -18,25 +36,7 @@ import { concat, getStyles, hasAttrClass, -} from '~/support'; -import { createDOMObserver, createSizeObserver, createTrinsicObserver } from '~/observers'; -import { getEnvironment } from '~/environment'; -import { - classNameScrollbar, - dataAttributeHost, - dataAttributeViewport, - dataValueViewportMeasuring, - dataValueViewportArrange, - dataValueNoClipping, -} from '~/classnames'; -import { getStaticPluginModuleInstance, scrollbarsHidingPluginName } from '~/plugins'; -import type { Options, OptionsCheckFn } from '~/options'; -import type { ScrollbarsHidingPlugin } from '~/plugins'; -import type { SizeObserverCallbackParams } from '~/observers'; -import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; -import type { Setup, SetupUpdateInfo, StructureSetupState } from '~/setups'; -import type { CacheValues, WH } from '~/support'; -import type { PlainObject } from '~/typings'; +} from '../../support'; export interface ObserversSetupState { _heightIntrinsic: boolean; diff --git a/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.elements.ts b/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.elements.ts index 79279c33..fbd2eb12 100644 --- a/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.elements.ts +++ b/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.elements.ts @@ -1,3 +1,22 @@ +import type { XY } from '../../support'; +import type { + InitializationTarget, + InitializationTargetElement, + InitializationTargetObject, +} from '../../initialization'; +import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; +import type { ScrollbarsSetupEvents } from './scrollbarsSetup.events'; +import type { StyleObject } from '../../typings'; +import type { StructureSetupState } from '../structureSetup'; +import { dynamicInitializationElement as generalDynamicInitializationElement } from '../../initialization'; +import { getEnvironment } from '../../environment'; +import { + classNameScrollbar, + classNameScrollbarHorizontal, + classNameScrollbarVertical, + classNameScrollbarTrack, + classNameScrollbarHandle, +} from '../../classnames'; import { addClass, appendChildren, @@ -19,26 +38,7 @@ import { getScrollCoordinatesPercent, isDefaultDirectionScrollCoordinates, roundCssNumber, -} from '~/support'; -import { - classNameScrollbar, - classNameScrollbarHorizontal, - classNameScrollbarVertical, - classNameScrollbarTrack, - classNameScrollbarHandle, -} from '~/classnames'; -import { getEnvironment } from '~/environment'; -import { dynamicInitializationElement as generalDynamicInitializationElement } from '~/initialization'; -import type { XY } from '~/support'; -import type { - InitializationTarget, - InitializationTargetElement, - InitializationTargetObject, -} from '~/initialization'; -import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; -import type { ScrollbarsSetupEvents } from './scrollbarsSetup.events'; -import type { StyleObject } from '~/typings'; -import type { StructureSetupState } from '../structureSetup'; +} from '../../support'; export interface ScrollbarStructure { _scrollbar: HTMLElement; @@ -72,7 +72,7 @@ export interface ScrollbarsSetupElementsObj { export type ScrollbarsSetupElements = [ elements: ScrollbarsSetupElementsObj, - appendElements: () => () => void + appendElements: () => () => void, ]; type ScrollbarStyleFn = ( @@ -188,13 +188,12 @@ export const createScrollbarsSetupElements = ( const viewportPercent = getViewportPercent(); const createScrollbarStyleFn = (axisViewportPercent: number): ScrollbarStyleFn => - (structure: ScrollbarStructure) => - [ - structure._scrollbar, - { - [cssCustomPropViewportPercent]: roundCssNumber(axisViewportPercent) + '', - }, - ]; + (structure: ScrollbarStructure) => [ + structure._scrollbar, + { + [cssCustomPropViewportPercent]: roundCssNumber(axisViewportPercent) + '', + }, + ]; scrollbarStyle(horizontalScrollbars, createScrollbarStyleFn(viewportPercent.x)); scrollbarStyle(verticalScrollbars, createScrollbarStyleFn(viewportPercent.y)); @@ -208,13 +207,12 @@ export const createScrollbarsSetupElements = ( ); const createScrollbarStyleFn = (axisScrollPercent: number): ScrollbarStyleFn => - (structure: ScrollbarStructure) => - [ - structure._scrollbar, - { - [cssCustomPropScrollPercent]: roundCssNumber(axisScrollPercent) + '', - }, - ]; + (structure: ScrollbarStructure) => [ + structure._scrollbar, + { + [cssCustomPropScrollPercent]: roundCssNumber(axisScrollPercent) + '', + }, + ]; scrollbarStyle(horizontalScrollbars, createScrollbarStyleFn(scrollPercent.x)); scrollbarStyle(verticalScrollbars, createScrollbarStyleFn(scrollPercent.y)); @@ -225,13 +223,12 @@ export const createScrollbarsSetupElements = ( const defaultDirectionScroll = isDefaultDirectionScrollCoordinates(_scrollCoordinates); const createScrollbarStyleFn = (axisIsDefaultDirectionScrollCoordinates: boolean): ScrollbarStyleFn => - (structure: ScrollbarStructure) => - [ - structure._scrollbar, - { - [cssCustomPropScrollDirection]: axisIsDefaultDirectionScrollCoordinates ? '0' : '1', - }, - ]; + (structure: ScrollbarStructure) => [ + structure._scrollbar, + { + [cssCustomPropScrollDirection]: axisIsDefaultDirectionScrollCoordinates ? '0' : '1', + }, + ]; scrollbarStyle(horizontalScrollbars, createScrollbarStyleFn(defaultDirectionScroll.x)); scrollbarStyle(verticalScrollbars, createScrollbarStyleFn(defaultDirectionScroll.y)); diff --git a/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.events.ts b/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.events.ts index 753203cf..6bce8173 100644 --- a/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.events.ts +++ b/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.events.ts @@ -1,3 +1,17 @@ +import type { XY } from '../../support'; +import type { ClickScrollPlugin } from '../../plugins'; +import type { ReadonlyOptions } from '../../options'; +import type { StructureSetupState } from '../../setups'; +import type { ScrollbarsSetupElementsObj, ScrollbarStructure } from './scrollbarsSetup.elements'; +import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; +import { + classNameScrollbarHandle, + classNameScrollbarInteraction, + classNameScrollbarWheel, + dataAttributeHost, + dataAttributeViewport, +} from '../../classnames'; +import { clickScrollPluginModuleName, getStaticPluginModuleInstance } from '../../plugins'; import { getBoundingClientRect, getOffsetSize, @@ -21,21 +35,7 @@ import { isFunction, mathAbs, focusElement, -} from '~/support'; -import { clickScrollPluginModuleName, getStaticPluginModuleInstance } from '~/plugins'; -import { - classNameScrollbarHandle, - classNameScrollbarInteraction, - classNameScrollbarWheel, - dataAttributeHost, - dataAttributeViewport, -} from '~/classnames'; -import type { XY } from '~/support'; -import type { ClickScrollPlugin } from '~/plugins'; -import type { ReadonlyOptions } from '~/options'; -import type { StructureSetupState } from '~/setups'; -import type { ScrollbarsSetupElementsObj, ScrollbarStructure } from './scrollbarsSetup.elements'; -import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; +} from '../../support'; export type ScrollbarsSetupEvents = ( scrollbarStructure: ScrollbarStructure, diff --git a/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.ts b/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.ts index c12b5a98..d5ab0a5a 100644 --- a/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.ts +++ b/packages/overlayscrollbars/src/setups/scrollbarsSetup/scrollbarsSetup.ts @@ -1,14 +1,16 @@ -import { - bind, - noop, - addEventListener, - push, - runEachAndClear, - selfClearTimeout, - strScroll, - strVisible, -} from '~/support'; -import { getEnvironment } from '~/environment'; +import type { OverflowBehavior, ReadonlyOptions } from '../../options'; +import type { ScrollbarsSetupElementsObj } from './scrollbarsSetup.elements'; +import type { + ObserversSetupState, + ObserversSetupUpdateHints, + Setup, + SetupUpdateInfo, + StructureSetupState, + StructureSetupUpdateHints, +} from '../../setups'; +import type { InitializationTarget } from '../../initialization'; +import type { OverflowStyle } from '../../typings'; +import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; import { classNameScrollbarThemeNone, classNameScrollbarVisible, @@ -19,20 +21,18 @@ import { classNameScrollbarTrackInteractive, classNameScrollbarRtl, classNameScrollbarAutoHide, -} from '~/classnames'; -import type { OverflowBehavior, ReadonlyOptions } from '~/options'; -import type { ScrollbarsSetupElementsObj } from './scrollbarsSetup.elements'; -import type { - ObserversSetupState, - ObserversSetupUpdateHints, - Setup, - SetupUpdateInfo, - StructureSetupState, - StructureSetupUpdateHints, -} from '~/setups'; -import type { InitializationTarget } from '~/initialization'; -import type { OverflowStyle } from '~/typings'; -import type { StructureSetupElementsObj } from '../structureSetup/structureSetup.elements'; +} from '../../classnames'; +import { getEnvironment } from '../../environment'; +import { + bind, + noop, + addEventListener, + push, + runEachAndClear, + selfClearTimeout, + strScroll, + strVisible, +} from '../../support'; import { createScrollbarsSetupElements } from './scrollbarsSetup.elements'; import { createScrollbarsSetupEvents } from './scrollbarsSetup.events'; @@ -47,7 +47,7 @@ export interface ScrollbarsSetupUpdateInfo extends SetupUpdateInfo { export type ScrollbarsSetup = [ ...Setup, /** The elements created by the scrollbars setup. */ - ScrollbarsSetupElementsObj + ScrollbarsSetupElementsObj, ]; export const createScrollbarsSetup = ( diff --git a/packages/overlayscrollbars/src/setups/setups.ts b/packages/overlayscrollbars/src/setups/setups.ts index 4574f983..06cbe94e 100644 --- a/packages/overlayscrollbars/src/setups/setups.ts +++ b/packages/overlayscrollbars/src/setups/setups.ts @@ -1,3 +1,11 @@ +import type { OptionsCheckFn, Options, PartialOptions, ReadonlyOptions } from '../options'; +import type { DeepReadonly } from '../typings'; +import type { InitializationTarget } from '../initialization'; +import type { ObserversSetupState, ObserversSetupUpdateHints } from './observersSetup'; +import type { StructureSetupState, StructureSetupUpdateHints } from './structureSetup'; +import type { StructureSetupElementsObj } from './structureSetup/structureSetup.elements'; +import type { ScrollbarsSetupElementsObj } from './scrollbarsSetup/scrollbarsSetup.elements'; +import { createOptionCheck } from '../options'; import { assignDeep, bind, @@ -6,15 +14,7 @@ import { keys, runEachAndClear, scrollElementTo, -} from '~/support'; -import { createOptionCheck } from '~/options'; -import type { OptionsCheckFn, Options, PartialOptions, ReadonlyOptions } from '~/options'; -import type { DeepReadonly } from '~/typings'; -import type { InitializationTarget } from '~/initialization'; -import type { ObserversSetupState, ObserversSetupUpdateHints } from './observersSetup'; -import type { StructureSetupState, StructureSetupUpdateHints } from './structureSetup'; -import type { StructureSetupElementsObj } from './structureSetup/structureSetup.elements'; -import type { ScrollbarsSetupElementsObj } from './scrollbarsSetup/scrollbarsSetup.elements'; +} from '../support'; import { createObserversSetup } from './observersSetup'; import { createScrollbarsSetup } from './scrollbarsSetup'; import { createStructureSetup } from './structureSetup'; @@ -30,14 +30,14 @@ export type SetupUpdateInfo = { export type Setup< U extends SetupUpdateInfo, S extends Readonly>, - H extends SetupUpdateHints | void + H extends SetupUpdateHints | void, > = [ /** The create function which returns the `destroy` function. */ _create: () => () => void, /** Function which updates the setup and returns the update result. */ _update: (updateInfo: U) => H, /** Function which returns the current state. */ - _state: S + _state: S, ]; export interface SetupsUpdateInfo { @@ -71,7 +71,7 @@ export type Setups = [ update: (updateInfo: SetupsUpdateInfo) => boolean, getState: () => SetupsState, elements: SetupsElements, - canceled: () => void + canceled: () => void, ]; export const createSetups = ( diff --git a/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.elements.ts b/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.elements.ts index bf8a6d14..2353d958 100644 --- a/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.elements.ts +++ b/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.elements.ts @@ -1,3 +1,8 @@ +import type { + InitializationTarget, + InitializationTargetElement, + InitializationTargetObject, +} from '../../initialization'; import { isHTMLElement, appendChildren, @@ -26,7 +31,7 @@ import { getStyles, strOverflowX, strOverflowY, -} from '~/support'; +} from '../../support'; import { dataAttributeHost, dataAttributeInitialize, @@ -37,23 +42,18 @@ import { dataAttributeHtmlBody, dataValueHostIsHost, dataValueViewportScrolling, -} from '~/classnames'; -import { getEnvironment } from '~/environment'; +} from '../../classnames'; +import { getEnvironment } from '../../environment'; import { staticInitializationElement as generalStaticInitializationElement, dynamicInitializationElement as generalDynamicInitializationElement, -} from '~/initialization'; -import type { - InitializationTarget, - InitializationTargetElement, - InitializationTargetObject, -} from '~/initialization'; +} from '../../initialization'; import { overflowIsVisible } from './structureSetup.utils'; export type StructureSetupElements = [ elements: StructureSetupElementsObj, appendElements: () => () => void, - canceled: () => void + canceled: () => void, ]; export interface StructureSetupElementsObj { diff --git a/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.ts b/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.ts index d9f8e25b..b6590cd3 100644 --- a/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.ts +++ b/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.ts @@ -1,4 +1,13 @@ -import { getEnvironment } from '~/environment'; +import type { TRBL, XY, ScrollCoordinates } from '../../support'; +import type { StructureSetupElementsObj } from './structureSetup.elements'; +import type { + ObserversSetupState, + ObserversSetupUpdateHints, + Setup, + SetupUpdateInfo, +} from '../../setups'; +import type { InitializationTarget } from '../../initialization'; +import type { StyleObject, OverflowStyle } from '../../typings'; import { assignDeep, each, @@ -13,19 +22,8 @@ import { strPaddingLeft, strPaddingRight, strPaddingTop, - type TRBL, - type XY, -} from '~/support'; -import type { ScrollCoordinates } from '~/support'; -import type { StructureSetupElementsObj } from './structureSetup.elements'; -import type { - ObserversSetupState, - ObserversSetupUpdateHints, - Setup, - SetupUpdateInfo, -} from '~/setups'; -import type { InitializationTarget } from '~/initialization'; -import type { StyleObject, OverflowStyle } from '~/typings'; +} from '../../support'; +import { getEnvironment } from '../../environment'; import { createStructureSetupElements } from './structureSetup.elements'; import { createOverflowUpdateSegment, @@ -62,7 +60,7 @@ export type StructureSetup = [ /** The elements created by the structure setup. */ StructureSetupElementsObj, /** Function to be called when the initialization was canceled. */ - () => void + () => void, ]; export type StructureUpdateSegment = ( diff --git a/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.utils.ts b/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.utils.ts index c7e66939..c47df902 100644 --- a/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.utils.ts +++ b/packages/overlayscrollbars/src/setups/structureSetup/structureSetup.utils.ts @@ -1,8 +1,8 @@ -import { strHidden, strScroll, strVisible } from '~/support'; -import type { Env } from '~/environment'; -import type { XY } from '~/support'; -import type { Options, OptionsCheckFn, OverflowBehavior } from '~/options'; -import type { OverflowStyle } from '~/typings'; +import type { Env } from '../../environment'; +import type { XY } from '../../support'; +import type { Options, OptionsCheckFn, OverflowBehavior } from '../../options'; +import type { OverflowStyle } from '../../typings'; +import { strHidden, strScroll, strVisible } from '../../support'; export interface ViewportOverflowState { _overflowScroll: XY; diff --git a/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/overflowUpdateSegment.ts b/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/overflowUpdateSegment.ts index f8c5e95b..b900ffc8 100644 --- a/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/overflowUpdateSegment.ts +++ b/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/overflowUpdateSegment.ts @@ -1,3 +1,7 @@ +import type { ScrollCoordinates, WH, XY } from '../../../support'; +import type { ScrollbarsHidingPlugin } from '../../../plugins/scrollbarsHidingPlugin'; +import type { OverflowStyle } from '../../../typings'; +import type { CreateStructureUpdateSegment } from '../structureSetup'; import { createCache, getScrollSize, @@ -28,8 +32,8 @@ import { stopPropagation, rAF, hasAttrClass, -} from '~/support'; -import { getEnvironment } from '~/environment'; +} from '../../../support'; +import { getEnvironment } from '../../../environment'; import { dataAttributeHost, dataValueNoClipping, @@ -39,12 +43,8 @@ import { dataValueViewportOverflowYPrefix, dataValueViewportNoContent, dataValueViewportMeasuring, -} from '~/classnames'; -import { getStaticPluginModuleInstance, scrollbarsHidingPluginName } from '~/plugins'; -import type { ScrollCoordinates, WH, XY } from '~/support'; -import type { ScrollbarsHidingPlugin } from '~/plugins/scrollbarsHidingPlugin'; -import type { OverflowStyle } from '~/typings'; -import type { CreateStructureUpdateSegment } from '../structureSetup'; +} from '../../../classnames'; +import { getStaticPluginModuleInstance, scrollbarsHidingPluginName } from '../../../plugins'; import { createViewportOverflowState, getShowNativeOverlaidScrollbars, diff --git a/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/paddingUpdateSegment.ts b/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/paddingUpdateSegment.ts index e57716a1..ef1a658c 100644 --- a/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/paddingUpdateSegment.ts +++ b/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/paddingUpdateSegment.ts @@ -1,3 +1,5 @@ +import type { StyleObject } from '../../../typings'; +import type { CreateStructureUpdateSegment } from '../structureSetup'; import { createCache, topRightBottomLeft, @@ -13,10 +15,8 @@ import { strPaddingTop, strWidth, setStyles, -} from '~/support'; -import { getEnvironment } from '~/environment'; -import type { StyleObject } from '~/typings'; -import type { CreateStructureUpdateSegment } from '../structureSetup'; +} from '../../../support'; +import { getEnvironment } from '../../../environment'; /** * Lifecycle with the responsibility to adjust the padding styling of the padding and viewport element. diff --git a/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/trinsicUpdateSegment.ts b/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/trinsicUpdateSegment.ts index 8bdd9d2a..9d31f5bd 100644 --- a/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/trinsicUpdateSegment.ts +++ b/packages/overlayscrollbars/src/setups/structureSetup/updateSegments/trinsicUpdateSegment.ts @@ -1,5 +1,5 @@ -import { setStyles, strHeight } from '~/support'; import type { CreateStructureUpdateSegment } from '../structureSetup'; +import { setStyles, strHeight } from '../../../support'; /** * Lifecycle with the responsibility to adjust the trinsic behavior of the content element. diff --git a/packages/overlayscrollbars/src/support/dom/style.ts b/packages/overlayscrollbars/src/support/dom/style.ts index e8fee15c..1714203f 100644 --- a/packages/overlayscrollbars/src/support/dom/style.ts +++ b/packages/overlayscrollbars/src/support/dom/style.ts @@ -1,4 +1,4 @@ -import type { PlainObject, StyleObject, StyleObjectKey, StyleObjectValue } from '~/typings'; +import type { PlainObject, StyleObject, StyleObjectKey, StyleObjectValue } from '../../typings'; import type { XY } from './offset'; import type { HTMLElementTarget } from './types'; import { wnd } from '../utils/alias'; @@ -42,8 +42,8 @@ export function setStyles( isNull(rawValue) || isBoolean(rawValue) ? '' : isNumber(rawValue) - ? numberToCssPx(rawValue) - : rawValue; + ? numberToCssPx(rawValue) + : rawValue; if (name.indexOf('--') === 0) { elmStyle.setProperty(name, value); diff --git a/packages/overlayscrollbars/src/support/utils/array.ts b/packages/overlayscrollbars/src/support/utils/array.ts index cbe171df..107ac27f 100644 --- a/packages/overlayscrollbars/src/support/utils/array.ts +++ b/packages/overlayscrollbars/src/support/utils/array.ts @@ -1,4 +1,4 @@ -import type { PlainObject } from '~/typings'; +import type { PlainObject } from '../../typings'; import { isArray, isArrayLike, isString } from './types'; type RunEachItem = ((...args: any) => any | any[]) | false | null | undefined; diff --git a/packages/overlayscrollbars/src/support/utils/equal.ts b/packages/overlayscrollbars/src/support/utils/equal.ts index 5a289ac0..58ccae38 100644 --- a/packages/overlayscrollbars/src/support/utils/equal.ts +++ b/packages/overlayscrollbars/src/support/utils/equal.ts @@ -1,7 +1,7 @@ import type { WH } from '../dom/dimensions'; import type { XY } from '../dom/offset'; import type { TRBL } from '../dom/style'; -import type { PlainObject } from '~/typings'; +import type { PlainObject } from '../../typings'; import { each } from './array'; import { mathRound } from './alias'; import { strHeight, strWidth } from './strings'; diff --git a/packages/overlayscrollbars/src/support/utils/object.ts b/packages/overlayscrollbars/src/support/utils/object.ts index 8b05b1dc..0980d5dc 100644 --- a/packages/overlayscrollbars/src/support/utils/object.ts +++ b/packages/overlayscrollbars/src/support/utils/object.ts @@ -1,4 +1,4 @@ -import type { PlainObject } from '~/typings'; +import type { PlainObject } from '../../typings'; import { isArray, isFunction, isPlainObject, isNull } from './types'; import { each } from './array'; @@ -21,12 +21,14 @@ type AssignDeep = { (target: T, object1: U, object2: V): T & U & V; (target: T, object1: U, object2: V, object3: W): T & U & V & W; (target: T, object1: U, object2: V, object3: W, object4: X): T & U & V & W & X; - (target: T, object1: U, object2: V, object3: W, object4: X, object5: Y): T & - U & - V & - W & - X & - Y; + ( + target: T, + object1: U, + object2: V, + object3: W, + object4: X, + object5: Y + ): T & U & V & W & X & Y; ( target: T, object1?: U, diff --git a/packages/overlayscrollbars/src/support/utils/types.ts b/packages/overlayscrollbars/src/support/utils/types.ts index d689cb04..d60bc35c 100644 --- a/packages/overlayscrollbars/src/support/utils/types.ts +++ b/packages/overlayscrollbars/src/support/utils/types.ts @@ -1,4 +1,4 @@ -import type { PlainObject } from '~/typings'; +import type { PlainObject } from '../../typings'; export const isUndefined = (obj: any): obj is undefined => obj === undefined; diff --git a/packages/overlayscrollbars/test/playwright/package.json b/packages/overlayscrollbars/test/package.json similarity index 69% rename from packages/overlayscrollbars/test/playwright/package.json rename to packages/overlayscrollbars/test/package.json index df147879..ea24b81f 100644 --- a/packages/overlayscrollbars/test/playwright/package.json +++ b/packages/overlayscrollbars/test/package.json @@ -1,4 +1,5 @@ { "private": true, + "type": "module", "sideEffects": true } diff --git a/packages/overlayscrollbars/test/playwright/setups/structureSetup/update/index.browser.ts b/packages/overlayscrollbars/test/playwright/setups/structureSetup/update/index.browser.ts index 9a59897b..814e3adb 100644 --- a/packages/overlayscrollbars/test/playwright/setups/structureSetup/update/index.browser.ts +++ b/packages/overlayscrollbars/test/playwright/setups/structureSetup/update/index.browser.ts @@ -1,8 +1,6 @@ import '~/index.scss'; import './index.scss'; import './handleEnvironment'; -import { OverlayScrollbars } from '~/overlayscrollbars'; -import { dataAttributeViewport } from '~/classnames'; import should from 'should'; import { generateClassChangeSelectCallback, @@ -12,6 +10,8 @@ import { setTestResult, waitForOrFailTest, } from '@~local/browser-testing'; +import { OverlayScrollbars } from '~/overlayscrollbars'; +import { dataAttributeViewport } from '~/classnames'; import { assignDeep, getClientSize, @@ -851,24 +851,36 @@ const overflowTest = async (osOptions?: DeepPartial) => { } await iterateBoxSizing(async () => { - await iterateHeight(async () => { - await iterateWidth(async () => { - await iterateBorder(async () => { - // assume this part isn't critical - // await iterateFloat(async () => { - // await iterateMargin(); - // }); - await iteratePadding(async () => { - await iterateOverflow(); - }, withSkippedItems && ['paddingLarge']); - - // assume this part isn't critical for special options - if (!osOptions) { - await iterateDirection(); - } - }, withSkippedItems && ['borderSmall']); - }, withSkippedItems && ['widthHundred']); - }, withSkippedItems && ['heightHundred']); + await iterateHeight( + async () => { + await iterateWidth( + async () => { + await iterateBorder( + async () => { + // assume this part isn't critical + // await iterateFloat(async () => { + // await iterateMargin(); + // }); + await iteratePadding( + async () => { + await iterateOverflow(); + }, + withSkippedItems && ['paddingLarge'] + ); + + // assume this part isn't critical for special options + if (!osOptions) { + await iterateDirection(); + } + }, + withSkippedItems && ['borderSmall'] + ); + }, + withSkippedItems && ['widthHundred'] + ); + }, + withSkippedItems && ['heightHundred'] + ); }); }); }; diff --git a/packages/overlayscrollbars/test/tsconfig.json b/packages/overlayscrollbars/test/tsconfig.json new file mode 100644 index 00000000..4625024e --- /dev/null +++ b/packages/overlayscrollbars/test/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "baseUrl": "../", + "paths": { + "~/*": ["./src/*"] + }, + "types": ["jest", "node"] + } +} diff --git a/packages/overlayscrollbars/tsconfig.json b/packages/overlayscrollbars/tsconfig.json index 65b9317d..d41ecd64 100644 --- a/packages/overlayscrollbars/tsconfig.json +++ b/packages/overlayscrollbars/tsconfig.json @@ -1,10 +1,7 @@ { "extends": "@~local/tsconfig", "compilerOptions": { - "paths": { - "~/*": ["./src/*"] - }, - "types": ["jest", "node"], + "types": ["node"], }, "exclude": ["dist"] } diff --git a/packages/overlayscrollbars/tsconfig.types.json b/packages/overlayscrollbars/tsconfig.types.json new file mode 100644 index 00000000..be4eb777 --- /dev/null +++ b/packages/overlayscrollbars/tsconfig.types.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "rootDir": "./src/", + "outDir": "./types", + "declaration": true + }, + "include": ["src/**/*"] +}