SYMBOL INDEX (8480 symbols across 1024 files) FILE: app/Access/Controllers/ConfirmEmailController.php class ConfirmEmailController (line 15) | class ConfirmEmailController extends Controller method __construct (line 17) | public function __construct( method show (line 28) | public function show() method showAwaiting (line 37) | public function showAwaiting() method showAcceptForm (line 51) | public function showAcceptForm(string $token) method confirm (line 62) | public function confirm(Request $request) method resend (line 97) | public function resend() FILE: app/Access/Controllers/ForgotPasswordController.php class ForgotPasswordController (line 11) | class ForgotPasswordController extends Controller method __construct (line 13) | public function __construct() method showLinkRequestForm (line 22) | public function showLinkRequestForm() method sendResetLinkEmail (line 30) | public function sendResetLinkEmail(Request $request) FILE: app/Access/Controllers/HandlesPartialLogins.php type HandlesPartialLogins (line 9) | trait HandlesPartialLogins method currentOrLastAttemptedUser (line 14) | protected function currentOrLastAttemptedUser(): User FILE: app/Access/Controllers/LoginController.php class LoginController (line 15) | class LoginController extends Controller method __construct (line 19) | public function __construct( method getLogin (line 31) | public function getLogin(Request $request) method login (line 62) | public function login(Request $request) method logout (line 96) | public function logout() method username (line 104) | protected function username(): string method credentials (line 112) | protected function credentials(Request $request): array method sendLoginResponse (line 121) | protected function sendLoginResponse(Request $request) method attemptLogin (line 132) | protected function attemptLogin(Request $request): bool method validateLogin (line 146) | protected function validateLogin(Request $request): void method sendLoginAttemptExceptionResponse (line 166) | protected function sendLoginAttemptExceptionResponse(LoginAttemptExcep... method updateIntendedFromPrevious (line 185) | protected function updateIntendedFromPrevious(): void FILE: app/Access/Controllers/MfaBackupCodesController.php class MfaBackupCodesController (line 16) | class MfaBackupCodesController extends Controller method generate (line 25) | public function generate(BackupCodeService $codeService) method confirm (line 45) | public function confirm() method verify (line 71) | public function verify(Request $request, BackupCodeService $codeServic... FILE: app/Access/Controllers/MfaController.php class MfaController (line 10) | class MfaController extends Controller method setup (line 17) | public function setup() method remove (line 36) | public function remove(string $method) method verify (line 52) | public function verify(Request $request) FILE: app/Access/Controllers/MfaTotpController.php class MfaTotpController (line 16) | class MfaTotpController extends Controller method __construct (line 22) | public function __construct( method generate (line 30) | public function generate() method confirm (line 57) | public function confirm(Request $request) method verify (line 86) | public function verify(Request $request, LoginService $loginService, M... FILE: app/Access/Controllers/OidcController.php class OidcController (line 10) | class OidcController extends Controller method __construct (line 12) | public function __construct( method login (line 21) | public function login() method callback (line 40) | public function callback(Request $request) method logout (line 71) | public function logout() FILE: app/Access/Controllers/RegisterController.php class RegisterController (line 16) | class RegisterController extends Controller method __construct (line 18) | public function __construct( method getRegister (line 32) | public function getRegister() method postRegister (line 48) | public function postRegister(Request $request) method validator (line 73) | protected function validator(array $data): ValidatorContract FILE: app/Access/Controllers/ResetPasswordController.php class ResetPasswordController (line 16) | class ResetPasswordController extends Controller method __construct (line 18) | public function __construct( method showResetForm (line 29) | public function showResetForm(Request $request) method reset (line 41) | public function reset(Request $request) method sendResetResponse (line 72) | protected function sendResetResponse(): RedirectResponse method sendResetFailedResponse (line 83) | protected function sendResetFailedResponse(Request $request, string $r... FILE: app/Access/Controllers/Saml2Controller.php class Saml2Controller (line 10) | class Saml2Controller extends Controller method __construct (line 12) | public function __construct( method login (line 21) | public function login() method logout (line 32) | public function logout() method metadata (line 51) | public function metadata() method sls (line 64) | public function sls() method startAcs (line 79) | public function startAcs(Request $request) method processAcs (line 101) | public function processAcs(Request $request) FILE: app/Access/Controllers/SocialController.php class SocialController (line 17) | class SocialController extends Controller method __construct (line 19) | public function __construct( method login (line 32) | public function login(string $socialDriver) method register (line 45) | public function register(string $socialDriver) method callback (line 60) | public function callback(Request $request, string $socialDriver) method detach (line 100) | public function detach(string $socialDriver) method socialRegisterCallback (line 113) | protected function socialRegisterCallback(string $socialDriver, Social... FILE: app/Access/Controllers/ThrottlesLogins.php type ThrottlesLogins (line 11) | trait ThrottlesLogins method hasTooManyLoginAttempts (line 16) | protected function hasTooManyLoginAttempts(Request $request): bool method incrementLoginAttempts (line 27) | protected function incrementLoginAttempts(Request $request): void method sendLockoutResponse (line 39) | protected function sendLockoutResponse(Request $request): \Symfony\Com... method clearLoginAttempts (line 56) | protected function clearLoginAttempts(Request $request): void method throttleKey (line 64) | protected function throttleKey(Request $request): string method limiter (line 72) | protected function limiter(): RateLimiter method maxAttempts (line 80) | public function maxAttempts(): int method decayMinutes (line 88) | public function decayMinutes(): int FILE: app/Access/Controllers/UserInviteController.php class UserInviteController (line 17) | class UserInviteController extends Controller method __construct (line 25) | public function __construct(UserInviteService $inviteService, UserRepo... method showSetPassword (line 39) | public function showSetPassword(string $token) method setPassword (line 57) | public function setPassword(Request $request, string $token) method handleTokenException (line 87) | protected function handleTokenException(Exception $exception) FILE: app/Access/EmailConfirmationService.php class EmailConfirmationService (line 9) | class EmailConfirmationService extends UserTokenService method sendConfirmation (line 20) | public function sendConfirmation(User $user): void method confirmationRequired (line 35) | public function confirmationRequired(): bool FILE: app/Access/ExternalBaseUserProvider.php class ExternalBaseUserProvider (line 9) | class ExternalBaseUserProvider implements UserProvider method retrieveById (line 14) | public function retrieveById(mixed $identifier): ?Authenticatable method retrieveByToken (line 24) | public function retrieveByToken(mixed $identifier, $token): null method updateRememberToken (line 37) | public function updateRememberToken(Authenticatable $user, $token) method retrieveByCredentials (line 45) | public function retrieveByCredentials(array $credentials): ?Authentica... method validateCredentials (line 55) | public function validateCredentials(Authenticatable $user, array $cred... method rehashPasswordIfRequired (line 61) | public function rehashPasswordIfRequired(Authenticatable $user, #[\Sen... FILE: app/Access/GroupSyncService.php class GroupSyncService (line 9) | class GroupSyncService method roleMatchesGroupNames (line 15) | protected function roleMatchesGroupNames(Role $role, array $groupNames... method externalIdMatchesGroupNames (line 29) | protected function externalIdMatchesGroupNames(string $externalId, arr... method parseRoleExternalAuthId (line 40) | protected function parseRoleExternalAuthId(string $externalId): array method matchGroupsToSystemsRoles (line 56) | protected function matchGroupsToSystemsRoles(array $groupNames): Colle... method syncUserWithFoundGroups (line 73) | public function syncUserWithFoundGroups(User $user, array $userGroups,... FILE: app/Access/Guards/AsyncExternalBaseSessionGuard.php class AsyncExternalBaseSessionGuard (line 12) | class AsyncExternalBaseSessionGuard extends ExternalBaseSessionGuard method validate (line 17) | public function validate(array $credentials = []): bool method attempt (line 27) | public function attempt(array $credentials = [], $remember = false): bool FILE: app/Access/Guards/ExternalBaseSessionGuard.php class ExternalBaseSessionGuard (line 19) | class ExternalBaseSessionGuard implements StatefulGuard method __construct (line 53) | public function __construct(string $name, UserProvider $provider, Sess... method user (line 64) | public function user(): Authenticatable|null method id (line 91) | public function id(): int|null method once (line 105) | public function once(array $credentials = []): bool method onceUsingId (line 119) | public function onceUsingId($id): Authenticatable|false method validate (line 133) | public function validate(array $credentials = []): bool method attempt (line 142) | public function attempt(array $credentials = [], $remember = false): bool method loginUsingId (line 151) | public function loginUsingId(mixed $id, $remember = false): Authentica... method login (line 163) | public function login(Authenticatable $user, $remember = false): void method updateSession (line 173) | protected function updateSession(string|int $id): void method logout (line 183) | public function logout(): void method clearUserDataFromStorage (line 198) | protected function clearUserDataFromStorage(): void method getLastAttempted (line 206) | public function getLastAttempted(): Authenticatable method getName (line 214) | public function getName(): string method viaRemember (line 222) | public function viaRemember(): bool method getUser (line 230) | public function getUser(): Authenticatable|null method setUser (line 238) | public function setUser(Authenticatable $user): self FILE: app/Access/Guards/LdapSessionGuard.php class LdapSessionGuard (line 17) | class LdapSessionGuard extends ExternalBaseSessionGuard method __construct (line 24) | public function __construct( method validate (line 40) | public function validate(array $credentials = []): bool method attempt (line 62) | public function attempt(array $credentials = [], $remember = false): bool method createNewFromLdapAndCreds (line 108) | protected function createNewFromLdapAndCreds(array $ldapUserDetails, a... FILE: app/Access/Ldap.php class Ldap (line 10) | class Ldap method connect (line 17) | public function connect(string $hostName) method setOption (line 27) | public function setOption($ldapConnection, int $option, mixed $value):... method startTls (line 35) | public function startTls($ldapConnection): bool method setVersion (line 45) | public function setVersion($ldapConnection, int $version): bool method search (line 57) | public function search($ldapConnection, string $baseDn, string $filter... method read (line 69) | public function read($ldapConnection, string $baseDn, string $filter, ... method getEntries (line 80) | public function getEntries($ldapConnection, $ldapSearchResult): array|... method searchAndGetEntries (line 90) | public function searchAndGetEntries($ldapConnection, string $baseDn, s... method bind (line 102) | public function bind($ldapConnection, ?string $bindRdn = null, ?string... method explodeDn (line 110) | public function explodeDn(string $dn, int $withAttrib): array|false method escape (line 118) | public function escape(string $value, string $ignore = '', int $flags ... FILE: app/Access/LdapService.php class LdapService (line 16) | class LdapService method __construct (line 26) | public function __construct( method shouldSyncGroups (line 38) | public function shouldSyncGroups(): bool method getUserWithAttributes (line 48) | private function getUserWithAttributes(string $userName, array $attrib... method getUserDisplayName (line 77) | protected function getUserDisplayName(array $userDetails, array $displ... method getUserDetails (line 100) | public function getUserDetails(string $userName): ?array method getUserResponseProperty (line 144) | protected function getUserResponseProperty(array $userDetails, string ... method validateUserCredentials (line 169) | public function validateUserCredentials(?array $ldapUserDetails, strin... method bindSystemUser (line 194) | protected function bindSystemUser($connection): void method getConnection (line 219) | protected function getConnection() method configureTlsCaCerts (line 284) | protected function configureTlsCaCerts(string $caCertPath): void method parseServerString (line 305) | protected function parseServerString(string $serverString): string method buildFilter (line 319) | protected function buildFilter(string $filterString, array $attrs): st... method getUserGroups (line 339) | public function getUserGroups(string $userName): array method extractGroupNamesFromLdapGroupDns (line 364) | protected function extractGroupNamesFromLdapGroupDns(array $groupDNs):... method getGroupsRecursive (line 384) | protected function getGroupsRecursive(array $groupDNs, array $checked)... method getParentsOfGroup (line 409) | protected function getParentsOfGroup(string $groupDN): array method extractGroupsFromSearchResponseEntry (line 429) | protected function extractGroupsFromSearchResponseEntry(array $ldapEnt... method syncGroups (line 455) | public function syncGroups(User $user, string $username): void method saveAndAttachAvatar (line 465) | public function saveAndAttachAvatar(User $user, array $ldapUserDetails... FILE: app/Access/LoginService.php class LoginService (line 17) | class LoginService method __construct (line 21) | public function __construct( method login (line 36) | public function login(User $user, string $method, bool $remember = fal... method reattemptLoginFor (line 67) | public function reattemptLoginFor(User $user): void method getLastLoginAttemptUser (line 82) | public function getLastLoginAttemptUser(): ?User method getLastLoginAttemptDetails (line 95) | protected function getLastLoginAttemptDetails(): array method setLastLoginAttemptedForUser (line 118) | protected function setLastLoginAttemptedForUser(User $user, string $me... method clearLastLoginAttempted (line 129) | protected function clearLastLoginAttempted(): void method needsMfaVerification (line 137) | public function needsMfaVerification(User $user): bool method awaitingEmailConfirmation (line 145) | public function awaitingEmailConfirmation(User $user): bool method attempt (line 159) | public function attempt(array $credentials, string $method, bool $reme... method areCredentialsForGuest (line 184) | protected function areCredentialsForGuest(array $credentials): bool method logout (line 199) | public function logout(): string method shouldAutoInitiate (line 211) | public function shouldAutoInitiate(): bool FILE: app/Access/Mfa/BackupCodeService.php class BackupCodeService (line 7) | class BackupCodeService method generateNewSet (line 12) | public function generateNewSet(): array method inputCodeExistsInSet (line 28) | public function inputCodeExistsInSet(string $code, string $codeSet): bool method removeInputCodeFromSet (line 40) | public function removeInputCodeFromSet(string $code, string $codeSet):... method countCodesInSet (line 53) | public function countCodesInSet(string $codeSet): int method cleanInputCode (line 58) | protected function cleanInputCode(string $code): string FILE: app/Access/Mfa/MfaSession.php class MfaSession (line 7) | class MfaSession method isRequiredForUser (line 12) | public function isRequiredForUser(User $user): bool method isPendingMfaSetup (line 21) | public function isPendingMfaSetup(User $user): bool method userRoleEnforcesMfa (line 29) | protected function userRoleEnforcesMfa(User $user): bool method isVerifiedForUser (line 39) | public function isVerifiedForUser(User $user): bool method markVerifiedForUser (line 47) | public function markVerifiedForUser(User $user): void method getMfaVerifiedSessionKey (line 55) | protected function getMfaVerifiedSessionKey(User $user): string FILE: app/Access/Mfa/MfaValue.php class MfaValue (line 18) | class MfaValue extends Model method allMethods (line 30) | public static function allMethods(): array method upsertWithValue (line 39) | public static function upsertWithValue(User $user, string $method, str... method getValueForUser (line 53) | public static function getValueForUser(User $user, string $method): ?s... method getValue (line 67) | protected function getValue(): string method setValue (line 75) | protected function setValue($value): void FILE: app/Access/Mfa/TotpService.php class TotpService (line 15) | class TotpService method __construct (line 17) | public function __construct( method generateSecret (line 30) | public function generateSecret(): string method generateUrl (line 39) | public function generateUrl(string $secret, User $user): string method generateQrCodeSvg (line 51) | public function generateQrCodeSvg(string $url): string method verifyCode (line 67) | public function verifyCode(string $code, string $secret): bool FILE: app/Access/Mfa/TotpValidationRule.php class TotpValidationRule (line 8) | class TotpValidationRule implements ValidationRule method __construct (line 14) | public function __construct( method validate (line 20) | public function validate(string $attribute, mixed $value, Closure $fai... FILE: app/Access/Notifications/ConfirmEmailNotification.php class ConfirmEmailNotification (line 9) | class ConfirmEmailNotification extends MailNotification method __construct (line 11) | public function __construct( method toMail (line 16) | public function toMail(User $notifiable): MailMessage FILE: app/Access/Notifications/ResetPasswordNotification.php class ResetPasswordNotification (line 9) | class ResetPasswordNotification extends MailNotification method __construct (line 11) | public function __construct( method toMail (line 16) | public function toMail(User $notifiable): MailMessage FILE: app/Access/Notifications/UserInviteNotification.php class UserInviteNotification (line 9) | class UserInviteNotification extends MailNotification method __construct (line 11) | public function __construct( method toMail (line 16) | public function toMail(User $notifiable): MailMessage FILE: app/Access/Oidc/OidcAccessToken.php class OidcAccessToken (line 8) | class OidcAccessToken extends AccessToken method __construct (line 18) | public function __construct(array $options = []) method validate (line 28) | private function validate(array $options): void method getIdToken (line 49) | public function getIdToken(): string FILE: app/Access/Oidc/OidcException.php class OidcException (line 7) | class OidcException extends Exception FILE: app/Access/Oidc/OidcIdToken.php class OidcIdToken (line 5) | class OidcIdToken extends OidcJwtWithClaims implements ProvidesClaims method validate (line 12) | public function validate(string $clientId): bool method validateTokenClaims (line 26) | protected function validateTokenClaims(string $clientId): void FILE: app/Access/Oidc/OidcInvalidKeyException.php class OidcInvalidKeyException (line 5) | class OidcInvalidKeyException extends \Exception FILE: app/Access/Oidc/OidcInvalidTokenException.php class OidcInvalidTokenException (line 7) | class OidcInvalidTokenException extends Exception FILE: app/Access/Oidc/OidcIssuerDiscoveryException.php class OidcIssuerDiscoveryException (line 7) | class OidcIssuerDiscoveryException extends Exception FILE: app/Access/Oidc/OidcJwtSigningKey.php class OidcJwtSigningKey (line 10) | class OidcJwtSigningKey method __construct (line 27) | public function __construct($jwkOrKeyPath) method loadFromPath (line 41) | protected function loadFromPath(string $path) method loadFromJwkArray (line 61) | protected function loadFromJwkArray(array $jwk) method verify (line 106) | public function verify(string $content, string $signature): bool method toPem (line 114) | public function toPem(): string FILE: app/Access/Oidc/OidcJwtWithClaims.php class OidcJwtWithClaims (line 5) | class OidcJwtWithClaims implements ProvidesClaims method __construct (line 18) | public function __construct(string $token, string $issuer, array $keys) method parse (line 28) | protected function parse(string $token): void method parseEncodedTokenPart (line 40) | protected function parseEncodedTokenPart(string $part): array method base64UrlDecode (line 52) | protected function base64UrlDecode(string $encoded): string method validateCommonTokenDetails (line 62) | public function validateCommonTokenDetails(string $clientId): bool method getClaim (line 75) | public function getClaim(string $claim): mixed method getAllClaims (line 83) | public function getAllClaims(): array method replaceClaims (line 91) | public function replaceClaims(array $claims): void method validateTokenStructure (line 102) | protected function validateTokenStructure(): void method validateTokenSignature (line 120) | protected function validateTokenSignature(): void method validateCommonClaims (line 154) | protected function validateCommonClaims(string $clientId): void FILE: app/Access/Oidc/OidcOAuthProvider.php class OidcOAuthProvider (line 19) | class OidcOAuthProvider extends AbstractProvider method getBaseAuthorizationUrl (line 34) | public function getBaseAuthorizationUrl(): string method getBaseAccessTokenUrl (line 42) | public function getBaseAccessTokenUrl(array $params): string method getResourceOwnerDetailsUrl (line 50) | public function getResourceOwnerDetailsUrl(AccessToken $token): string method addScope (line 58) | public function addScope(string $scope): void method getDefaultScopes (line 70) | protected function getDefaultScopes(): array method getScopeSeparator (line 79) | protected function getScopeSeparator(): string method checkResponse (line 88) | protected function checkResponse(ResponseInterface $response, $data): ... method createResourceOwner (line 103) | protected function createResourceOwner(array $response, AccessToken $t... method createAccessToken (line 114) | protected function createAccessToken(array $response, AbstractGrant $g... method getPkceMethod (line 123) | protected function getPkceMethod(): string FILE: app/Access/Oidc/OidcProviderSettings.php class OidcProviderSettings (line 16) | class OidcProviderSettings method __construct (line 31) | public function __construct(array $settings) method applySettingsFromArray (line 40) | protected function applySettingsFromArray(array $settingsArray): void method validateInitial (line 54) | protected function validateInitial(): void method validate (line 73) | public function validate(): void method discoverFromIssuer (line 97) | public function discoverFromIssuer(ClientInterface $httpClient, Reposi... method loadSettingsFromIssuerDiscovery (line 114) | protected function loadSettingsFromIssuerDiscovery(ClientInterface $ht... method filterKeys (line 158) | protected function filterKeys(array $keys): array method loadKeysFromUri (line 174) | protected function loadKeysFromUri(string $uri, ClientInterface $httpC... method arrayForOAuthProvider (line 190) | public function arrayForOAuthProvider(): array FILE: app/Access/Oidc/OidcService.php class OidcService (line 24) | class OidcService method __construct (line 26) | public function __construct( method login (line 44) | public function login(): array method processAuthorizeResponse (line 73) | public function processAuthorizeResponse(?string $authorizationCode): ... method getProviderSettings (line 93) | protected function getProviderSettings(): OidcProviderSettings method getProvider (line 136) | protected function getProvider(OidcProviderSettings $settings): OidcOA... method getAdditionalScopes (line 158) | protected function getAdditionalScopes(): array method processAccessTokenCallback (line 176) | protected function processAccessTokenCallback(OidcAccessToken $accessT... method getUserDetailsFromToken (line 247) | protected function getUserDetailsFromToken(OidcIdToken $idToken, OidcA... method config (line 286) | protected function config(): array method shouldSyncGroups (line 294) | protected function shouldSyncGroups(): bool method logout (line 305) | public function logout(): string FILE: app/Access/Oidc/OidcUserDetails.php class OidcUserDetails (line 7) | class OidcUserDetails method __construct (line 9) | public function __construct( method isFullyPopulated (line 21) | public function isFullyPopulated(bool $groupSyncActive): bool method populate (line 34) | public function populate( method getUserDisplayName (line 47) | protected static function getUserDisplayName(string $displayNameClaims... method getUserGroups (line 62) | protected static function getUserGroups(string $groupsClaim, ProvidesC... method getPicture (line 78) | protected static function getPicture(ProvidesClaims $claims): ?string FILE: app/Access/Oidc/OidcUserinfoResponse.php class OidcUserinfoResponse (line 7) | class OidcUserinfoResponse implements ProvidesClaims method __construct (line 12) | public function __construct(ResponseInterface $response, string $issue... method validate (line 30) | public function validate(string $idTokenSub, string $clientId): bool method getClaim (line 60) | public function getClaim(string $claim): mixed method getAllClaims (line 65) | public function getAllClaims(): array FILE: app/Access/Oidc/ProvidesClaims.php type ProvidesClaims (line 5) | interface ProvidesClaims method getClaim (line 11) | public function getClaim(string $claim): mixed; method getAllClaims (line 16) | public function getAllClaims(): array; FILE: app/Access/RegistrationService.php class RegistrationService (line 15) | class RegistrationService method __construct (line 17) | public function __construct( method ensureRegistrationAllowed (line 28) | public function ensureRegistrationAllowed() method registrationAllowed (line 39) | protected function registrationAllowed(): bool method findOrRegister (line 53) | public function findOrRegister(string $name, string $email, string $ex... method registerUser (line 78) | public function registerUser(array $userData, ?SocialAccount $socialAc... method ensureEmailDomainAllowed (line 133) | protected function ensureEmailDomainAllowed(string $userEmail): void FILE: app/Access/Saml2Service.php class Saml2Service (line 21) | class Saml2Service method __construct (line 25) | public function __construct( method login (line 38) | public function login(): array method logout (line 56) | public function logout(User $user): array method processAcsResponse (line 95) | public function processAcsResponse(?string $requestId, string $samlRes... method processSlsResponse (line 127) | public function processSlsResponse(?string $requestId): string method metadata (line 156) | public function metadata(): string method getToolkit (line 179) | protected function getToolkit(bool $spOnly = false): Auth method loadOneloginServiceProviderDetails (line 202) | protected function loadOneloginServiceProviderDetails(): array method shouldSyncGroups (line 223) | protected function shouldSyncGroups(): bool method getUserDisplayName (line 231) | protected function getUserDisplayName(array $samlAttributes, string $d... method getExternalId (line 256) | protected function getExternalId(array $samlAttributes, string $defaul... method getUserDetails (line 271) | protected function getUserDetails(string $samlID, $samlAttributes): array method getUserGroups (line 290) | public function getUserGroups(array $samlAttributes): array method simplifyValue (line 307) | protected function simplifyValue(array $data, $defaultValue) method getSamlResponseAttribute (line 325) | protected function getSamlResponseAttribute(array $samlAttributes, str... method processLoginCallback (line 343) | public function processLoginCallback(string $samlID, array $samlAttrib... FILE: app/Access/SocialAccount.php class SocialAccount (line 15) | class SocialAccount extends Model implements Loggable method user (line 24) | public function user(): BelongsTo method logDescriptor (line 32) | public function logDescriptor(): string FILE: app/Access/SocialAuthService.php class SocialAuthService (line 16) | class SocialAuthService method __construct (line 18) | public function __construct( method startLogIn (line 30) | public function startLogIn(string $socialDriver): RedirectResponse method startRegister (line 43) | public function startRegister(string $socialDriver): RedirectResponse method handleRegistrationCallback (line 56) | public function handleRegistrationCallback(string $socialDriver, Socia... method getSocialUser (line 77) | public function getSocialUser(string $socialDriver): SocialUser method handleLoginCallback (line 90) | public function handleLoginCallback(string $socialDriver, SocialUser $... method drivers (line 145) | public function drivers(): SocialDriverManager method newSocialAccount (line 153) | public function newSocialAccount(string $socialDriver, SocialUser $soc... method detachSocialAccount (line 165) | public function detachSocialAccount(string $socialDriver): void method getDriverForRedirect (line 173) | protected function getDriverForRedirect(string $driverName): Provider FILE: app/Access/SocialDriverManager.php class SocialDriverManager (line 10) | class SocialDriverManager method isAutoRegisterEnabled (line 43) | public function isAutoRegisterEnabled(string $driver): bool method isAutoConfirmEmailEnabled (line 51) | public function isAutoConfirmEmailEnabled(string $driver): bool method getActive (line 60) | public function getActive(): array method getConfigureForRedirectCallback (line 79) | public function getConfigureForRedirectCallback(string $driver): callable method addSocialDriver (line 91) | public function addSocialDriver( method getName (line 110) | protected function getName(string $driver): string method getDriverConfigProperty (line 115) | protected function getDriverConfigProperty(string $driver, string $pro... method ensureDriverActive (line 125) | public function ensureDriverActive(string $driverName): void method checkDriverConfigured (line 139) | protected function checkDriverConfigured(string $driver): bool FILE: app/Access/UserInviteException.php class UserInviteException (line 7) | class UserInviteException extends Exception FILE: app/Access/UserInviteService.php class UserInviteService (line 8) | class UserInviteService extends UserTokenService method sendInvitation (line 18) | public function sendInvitation(User $user) FILE: app/Access/UserTokenService.php class UserTokenService (line 13) | class UserTokenService method deleteByUser (line 28) | public function deleteByUser(User $user): void method checkTokenAndGetUserId (line 41) | public function checkTokenAndGetUserId(string $token): int method generateToken (line 59) | protected function generateToken(): string method createTokenForUser (line 72) | protected function createTokenForUser(User $user): string method tokenExists (line 88) | protected function tokenExists(string $token): bool method getEntryByToken (line 97) | protected function getEntryByToken(string $token): ?stdClass method entryExpired (line 107) | protected function entryExpired(stdClass $tokenEntry): bool FILE: app/Activity/ActivityQueries.php class ActivityQueries (line 17) | class ActivityQueries method __construct (line 19) | public function __construct( method latest (line 28) | public function latest(int $count = 20, int $page = 0): array method entityActivity (line 47) | public function entityActivity(Entity $entity, int $count = 20, int $p... method userActivity (line 84) | public function userActivity(User $user, int $count = 20, int $page = ... method filterSimilar (line 102) | protected function filterSimilar(iterable $activities): array FILE: app/Activity/ActivityType.php class ActivityType (line 5) | class ActivityType method all (line 81) | public static function all(): array FILE: app/Activity/CommentRepo.php class CommentRepo (line 13) | class CommentRepo method getById (line 18) | public function getById(int $id): Comment method getVisibleById (line 27) | public function getVisibleById(int $id): Comment method getQueryForVisible (line 36) | public function getQueryForVisible(): Builder method create (line 44) | public function create(Entity $entity, string $html, ?int $parentId, s... method update (line 84) | public function update(Comment $comment, string $html): Comment method archive (line 99) | public function archive(Comment $comment, bool $log = true): Comment method unarchive (line 118) | public function unarchive(Comment $comment, bool $log = true): Comment method delete (line 137) | public function delete(Comment $comment): void method getNextLocalId (line 147) | protected function getNextLocalId(Entity $entity): int FILE: app/Activity/Controllers/AuditLogApiController.php class AuditLogApiController (line 9) | class AuditLogApiController extends ApiController method list (line 18) | public function list() FILE: app/Activity/Controllers/AuditLogController.php class AuditLogController (line 13) | class AuditLogController extends Controller method index (line 15) | public function index(Request $request) FILE: app/Activity/Controllers/CommentApiController.php class CommentApiController (line 25) | class CommentApiController extends ApiController method __construct (line 40) | public function __construct( method list (line 49) | public function list(): JsonResponse method create (line 63) | public function create(Request $request): JsonResponse method read (line 83) | public function read(string $id): JsonResponse method update (line 113) | public function update(Request $request, string $id): JsonResponse method delete (line 139) | public function delete(string $id): Response FILE: app/Activity/Controllers/CommentController.php class CommentController (line 14) | class CommentController extends Controller method __construct (line 16) | public function __construct( method savePageComment (line 27) | public function savePageComment(Request $request, int $pageId) method update (line 56) | public function update(Request $request, int $commentId) method archive (line 77) | public function archive(int $id) method unarchive (line 97) | public function unarchive(int $id) method destroy (line 117) | public function destroy(int $id) FILE: app/Activity/Controllers/FavouriteController.php class FavouriteController (line 10) | class FavouriteController extends Controller method __construct (line 12) | public function __construct( method index (line 20) | public function index(Request $request, QueryTopFavourites $topFavouri... method add (line 40) | public function add(Request $request) method remove (line 58) | public function remove(Request $request) FILE: app/Activity/Controllers/TagController.php class TagController (line 10) | class TagController extends Controller method __construct (line 12) | public function __construct( method index (line 20) | public function index(Request $request) method getNameSuggestions (line 47) | public function getNameSuggestions(Request $request) method getValueSuggestions (line 58) | public function getValueSuggestions(Request $request) FILE: app/Activity/Controllers/WatchController.php class WatchController (line 11) | class WatchController extends Controller method update (line 13) | public function update(Request $request, MixedEntityRequestHelper $ent... FILE: app/Activity/Controllers/WebhookController.php class WebhookController (line 13) | class WebhookController extends Controller method __construct (line 15) | public function __construct() method index (line 25) | public function index(Request $request) method create (line 49) | public function create() method store (line 59) | public function store(Request $request) method edit (line 82) | public function edit(string $id) method update (line 97) | public function update(Request $request, string $id) method delete (line 122) | public function delete(string $id) method destroy (line 135) | public function destroy(string $id) FILE: app/Activity/DispatchWebhookJob.php class DispatchWebhookJob (line 20) | class DispatchWebhookJob implements ShouldQueue method __construct (line 37) | public function __construct(Webhook $webhook, string $event, Loggable|... method handle (line 52) | public function handle(HttpRequestService $http) FILE: app/Activity/Models/Activity.php class Activity (line 26) | class Activity extends Model method loggable (line 36) | public function loggable(): MorphTo method user (line 44) | public function user(): BelongsTo method jointPermissions (line 49) | public function jointPermissions(): HasMany method getText (line 58) | public function getText(): string method isForEntity (line 66) | public function isForEntity(): bool method isSimilarTo (line 76) | public function isSimilarTo(self $activityB): bool FILE: app/Activity/Models/Comment.php class Comment (line 28) | class Comment extends Model implements Loggable, OwnableInterface method entity (line 43) | public function entity(): MorphTo method parent (line 64) | public function parent(): BelongsTo method isUpdated (line 74) | public function isUpdated(): bool method logDescriptor (line 79) | public function logDescriptor(): string method safeHtml (line 84) | public function safeHtml(): string method jointPermissions (line 90) | public function jointPermissions(): HasMany method scopeVisible (line 100) | public function scopeVisible(Builder $query): Builder FILE: app/Activity/Models/Favouritable.php type Favouritable (line 7) | interface Favouritable method favourites (line 12) | public function favourites(): MorphMany; FILE: app/Activity/Models/Favourite.php class Favourite (line 11) | class Favourite extends Model method favouritable (line 20) | public function favouritable(): MorphTo method jointPermissions (line 25) | public function jointPermissions(): HasMany FILE: app/Activity/Models/Loggable.php type Loggable (line 5) | interface Loggable method logDescriptor (line 10) | public function logDescriptor(): string; FILE: app/Activity/Models/MentionHistory.php class MentionHistory (line 17) | class MentionHistory extends Model FILE: app/Activity/Models/Tag.php class Tag (line 19) | class Tag extends Model method entity (line 29) | public function entity(): MorphTo method jointPermissions (line 34) | public function jointPermissions(): HasMany method nameUrl (line 43) | public function nameUrl(): string method valueUrl (line 51) | public function valueUrl(): string FILE: app/Activity/Models/View.php class View (line 20) | class View extends Model method viewable (line 27) | public function viewable(): MorphTo method jointPermissions (line 32) | public function jointPermissions(): HasMany method incrementFor (line 41) | public static function incrementFor(Viewable $viewable): int FILE: app/Activity/Models/Viewable.php type Viewable (line 7) | interface Viewable method views (line 12) | public function views(): MorphMany; FILE: app/Activity/Models/Watch.php class Watch (line 22) | class Watch extends Model method watchable (line 28) | public function watchable(): MorphTo method jointPermissions (line 33) | public function jointPermissions(): HasMany method getLevelName (line 39) | public function getLevelName(): string method ignoring (line 44) | public function ignoring(): bool FILE: app/Activity/Models/Webhook.php class Webhook (line 23) | class Webhook extends Model implements Loggable method trackedEvents (line 37) | public function trackedEvents(): HasMany method updateTrackedEvents (line 45) | public function updateTrackedEvents(array $events): void method tracksEvent (line 65) | public function tracksEvent(string $event): bool method getUrl (line 73) | public function getUrl(string $path = ''): string method logDescriptor (line 81) | public function logDescriptor(): string FILE: app/Activity/Models/WebhookTrackedEvent.php class WebhookTrackedEvent (line 13) | class WebhookTrackedEvent extends Model FILE: app/Activity/Notifications/Handlers/BaseNotificationHandler.php class BaseNotificationHandler (line 13) | abstract class BaseNotificationHandler implements NotificationHandler method sendNotificationToUserIds (line 19) | protected function sendNotificationToUserIds(string $notification, arr... FILE: app/Activity/Notifications/Handlers/CommentCreationNotificationHandler.php class CommentCreationNotificationHandler (line 15) | class CommentCreationNotificationHandler extends BaseNotificationHandler method handle (line 17) | public function handle(Activity $activity, Loggable|string $detail, Us... FILE: app/Activity/Notifications/Handlers/CommentMentionNotificationHandler.php class CommentMentionNotificationHandler (line 18) | class CommentMentionNotificationHandler extends BaseNotificationHandler method handle (line 20) | public function handle(Activity $activity, Loggable|string $detail, Us... method logMentions (line 58) | protected function logMentions(Collection $mentionedUsers, Comment $co... method getPreviouslyNotifiedUserIds (line 77) | protected function getPreviouslyNotifiedUserIds(Comment $comment): array FILE: app/Activity/Notifications/Handlers/NotificationHandler.php type NotificationHandler (line 9) | interface NotificationHandler method handle (line 16) | public function handle(Activity $activity, string|Loggable $detail, Us... FILE: app/Activity/Notifications/Handlers/PageCreationNotificationHandler.php class PageCreationNotificationHandler (line 13) | class PageCreationNotificationHandler extends BaseNotificationHandler method handle (line 15) | public function handle(Activity $activity, Loggable|string $detail, Us... FILE: app/Activity/Notifications/Handlers/PageUpdateNotificationHandler.php class PageUpdateNotificationHandler (line 15) | class PageUpdateNotificationHandler extends BaseNotificationHandler method handle (line 17) | public function handle(Activity $activity, Loggable|string $detail, Us... FILE: app/Activity/Notifications/MessageParts/EntityLinkMessageLine.php class EntityLinkMessageLine (line 12) | class EntityLinkMessageLine implements Htmlable, Stringable method __construct (line 14) | public function __construct( method toHtml (line 20) | public function toHtml(): string method __toString (line 25) | public function __toString(): string FILE: app/Activity/Notifications/MessageParts/EntityPathMessageLine.php class EntityPathMessageLine (line 12) | class EntityPathMessageLine implements Htmlable, Stringable method __construct (line 19) | public function __construct( method toHtml (line 25) | public function toHtml(): string method __toString (line 31) | public function __toString(): string FILE: app/Activity/Notifications/MessageParts/LinkedMailMessageLine.php class LinkedMailMessageLine (line 13) | class LinkedMailMessageLine implements Htmlable, Stringable method __construct (line 15) | public function __construct( method toHtml (line 22) | public function toHtml(): string method __toString (line 28) | public function __toString(): string FILE: app/Activity/Notifications/MessageParts/ListMessageLine.php class ListMessageLine (line 12) | class ListMessageLine implements Htmlable, Stringable method __construct (line 14) | public function __construct( method toHtml (line 19) | public function toHtml(): string method __toString (line 28) | public function __toString(): string FILE: app/Activity/Notifications/Messages/BaseActivityNotification.php class BaseActivityNotification (line 16) | abstract class BaseActivityNotification extends MailNotification method __construct (line 20) | public function __construct( method toArray (line 32) | public function toArray($notifiable) method buildReasonFooterLine (line 43) | protected function buildReasonFooterLine(LocaleDefinition $locale): Li... method buildPagePathLine (line 57) | protected function buildPagePathLine(Page $page, User $notifiable): ?E... FILE: app/Activity/Notifications/Messages/CommentCreationNotification.php class CommentCreationNotification (line 12) | class CommentCreationNotification extends BaseActivityNotification method toMail (line 14) | public function toMail(User $notifiable): MailMessage FILE: app/Activity/Notifications/Messages/CommentMentionNotification.php class CommentMentionNotification (line 12) | class CommentMentionNotification extends BaseActivityNotification method toMail (line 14) | public function toMail(User $notifiable): MailMessage FILE: app/Activity/Notifications/Messages/PageCreationNotification.php class PageCreationNotification (line 11) | class PageCreationNotification extends BaseActivityNotification method toMail (line 13) | public function toMail(User $notifiable): MailMessage FILE: app/Activity/Notifications/Messages/PageUpdateNotification.php class PageUpdateNotification (line 11) | class PageUpdateNotification extends BaseActivityNotification method toMail (line 13) | public function toMail(User $notifiable): MailMessage FILE: app/Activity/Notifications/NotificationManager.php class NotificationManager (line 15) | class NotificationManager method handle (line 22) | public function handle(Activity $activity, string|Loggable $detail, Us... method registerHandler (line 36) | public function registerHandler(string $activityType, string $handlerC... method loadDefaultHandlers (line 47) | public function loadDefaultHandlers(): void FILE: app/Activity/Queries/WebhooksAllPaginatedAndSorted.php class WebhooksAllPaginatedAndSorted (line 12) | class WebhooksAllPaginatedAndSorted method run (line 14) | public function run(int $count, SimpleListOptions $listOptions): Lengt... FILE: app/Activity/TagRepo.php class TagRepo (line 13) | class TagRepo method __construct (line 15) | public function __construct( method queryWithTotals (line 23) | public function queryWithTotals(SimpleListOptions $listOptions, string... method getNameSuggestions (line 67) | public function getNameSuggestions(string $searchTerm): Collection method getValueSuggestions (line 89) | public function getValueSuggestions(string $searchTerm, string $tagNam... method saveTagsToEntity (line 114) | public function saveTagsToEntity(Entity $entity, array $tags = []): it... method newInstanceFromInput (line 131) | protected function newInstanceFromInput(array $input): Tag FILE: app/Activity/Tools/ActivityLogger.php class ActivityLogger (line 16) | class ActivityLogger method __construct (line 18) | public function __construct( method add (line 27) | public function add(string $type, string|Loggable $detail = ''): void method newActivityForUser (line 50) | protected function newActivityForUser(string $type): Activity method removeEntity (line 64) | public function removeEntity(Entity $entity): void method setNotification (line 76) | protected function setNotification(string $type): void method dispatchWebhooks (line 85) | protected function dispatchWebhooks(string $type, string|Loggable $det... method logFailedLogin (line 104) | public function logFailedLogin(string $username): void FILE: app/Activity/Tools/CommentTree.php class CommentTree (line 9) | class CommentTree method __construct (line 23) | public function __construct( method enabled (line 30) | public function enabled(): bool method empty (line 35) | public function empty(): bool method count (line 40) | public function count(): int method getActive (line 45) | public function getActive(): array method activeThreadCount (line 50) | public function activeThreadCount(): int method getArchived (line 55) | public function getArchived(): array method archivedThreadCount (line 60) | public function archivedThreadCount(): int method getCommentNodeForId (line 65) | public function getCommentNodeForId(int $commentId): ?CommentTreeNode method canUpdateAny (line 76) | public function canUpdateAny(): bool method loadVisibleHtml (line 87) | public function loadVisibleHtml(): void method createTree (line 99) | protected function createTree(array $comments): array method createTreeNodeForId (line 127) | protected function createTreeNodeForId(int $id, int $depth, array &$by... method loadComments (line 142) | protected function loadComments(): array FILE: app/Activity/Tools/CommentTreeNode.php class CommentTreeNode (line 7) | class CommentTreeNode method __construct (line 17) | public function __construct(Comment $comment, int $depth, array $child... FILE: app/Activity/Tools/EntityWatchers.php class EntityWatchers (line 11) | class EntityWatchers method __construct (line 23) | public function __construct( method getWatcherUserIds (line 30) | public function getWatcherUserIds(): array method isUserIgnoring (line 35) | public function isUserIgnoring(int $userId): bool method build (line 40) | protected function build(): void method getRelevantWatches (line 64) | protected function getRelevantWatches(): array FILE: app/Activity/Tools/IpFormatter.php class IpFormatter (line 5) | class IpFormatter method __construct (line 10) | public function __construct(string $ip, int $precision) method format (line 16) | public function format(): string method maskIpv4 (line 25) | protected function maskIpv4(): string method maskIpv6 (line 37) | protected function maskIpv6(): string method isIpv6 (line 49) | protected function isIpv6(): bool method explodeAndExpandIp (line 54) | protected function explodeAndExpandIp(string $separator, int $targetLe... method fromCurrentRequest (line 71) | public static function fromCurrentRequest(): self FILE: app/Activity/Tools/MentionParser.php class MentionParser (line 8) | class MentionParser method parseUserIdsFromHtml (line 10) | public function parseUserIdsFromHtml(string $html): array FILE: app/Activity/Tools/TagClassGenerator.php class TagClassGenerator (line 11) | class TagClassGenerator method __construct (line 13) | public function __construct( method generate (line 21) | public function generate(): array method generateAsString (line 47) | public function generateAsString(): string method generateClassesForTag (line 55) | protected function generateClassesForTag(Tag $tag, string $prefix = ''... method normalizeTagClassString (line 68) | protected function normalizeTagClassString(string $value): string FILE: app/Activity/Tools/UserEntityWatchOptions.php class UserEntityWatchOptions (line 14) | class UserEntityWatchOptions method __construct (line 18) | public function __construct( method canWatch (line 24) | public function canWatch(): bool method getWatchLevel (line 29) | public function getWatchLevel(): string method isWatching (line 34) | public function isWatching(): bool method getWatchedParent (line 39) | public function getWatchedParent(): ?WatchedParentDetails method updateLevelByName (line 55) | public function updateLevelByName(string $level): void method updateLevelByValue (line 61) | public function updateLevelByValue(int $level): void method getWatchMap (line 71) | public function getWatchMap(): array method getWatchLevelValue (line 103) | protected function getWatchLevelValue() method updateLevel (line 108) | protected function updateLevel(int $levelValue): void method remove (line 120) | protected function remove(): void method entityQuery (line 126) | protected function entityQuery(): Builder FILE: app/Activity/Tools/WatchedParentDetails.php class WatchedParentDetails (line 7) | class WatchedParentDetails method __construct (line 9) | public function __construct( method ignoring (line 15) | public function ignoring(): bool FILE: app/Activity/Tools/WebhookFormatter.php class WebhookFormatter (line 14) | class WebhookFormatter method __construct (line 27) | public function __construct(string $event, Webhook $webhook, string|Lo... method format (line 36) | public function format(): array method addModelFormatter (line 63) | public function addModelFormatter(callable $condition, callable $forma... method addDefaultModelFormatters (line 71) | public function addDefaultModelFormatters(): void method formatModel (line 86) | protected function formatModel(Model $model): array method formatText (line 99) | protected function formatText(): string method getDefault (line 113) | public static function getDefault(string $event, Webhook $webhook, $de... FILE: app/Activity/WatchLevels.php class WatchLevels (line 9) | class WatchLevels method all (line 41) | public static function all(): array method allSuitedFor (line 55) | public static function allSuitedFor(Entity $entity): array method levelNameToValue (line 72) | public static function levelNameToValue(string $level): int method levelValueToName (line 81) | public static function levelValueToName(int $level): string FILE: app/Api/ApiDocsController.php class ApiDocsController (line 7) | class ApiDocsController extends ApiController method display (line 12) | public function display() method json (line 25) | public function json() method redirect (line 37) | public function redirect() FILE: app/Api/ApiDocsGenerator.php class ApiDocsGenerator (line 18) | class ApiDocsGenerator method generateConsideringCache (line 27) | public static function generateConsideringCache(): Collection method generate (line 47) | protected function generate(): Collection method loadDetailsFromFiles (line 60) | protected function loadDetailsFromFiles(Collection $routes): Collection method loadDetailsFromControllers (line 83) | protected function loadDetailsFromControllers(Collection $routes): Col... method getBodyParamsFromClass (line 108) | protected function getBodyParamsFromClass(string $className, string $m... method getValidationAsString (line 129) | protected function getValidationAsString($validation): string method parseDescriptionFromDocBlockComment (line 151) | protected function parseDescriptionFromDocBlockComment(string $comment... method getReflectionMethod (line 165) | protected function getReflectionMethod(string $className, string $meth... method getReflectionClass (line 175) | protected function getReflectionClass(string $className): ReflectionClass method getFlatApiRoutes (line 189) | protected function getFlatApiRoutes(): Collection FILE: app/Api/ApiEntityListFormatter.php class ApiEntityListFormatter (line 9) | class ApiEntityListFormatter method __construct (line 37) | public function __construct(array $list) method withField (line 49) | public function withField(string $property, callable $callback): self method withType (line 60) | public function withType(): self method withTags (line 69) | public function withTags(): self method withParents (line 78) | public function withParents(): self method format (line 101) | public function format(): array method formatSingle (line 115) | protected function formatSingle(Entity $entity): array FILE: app/Api/ApiToken.php class ApiToken (line 22) | class ApiToken extends Model implements Loggable method user (line 34) | public function user(): BelongsTo method defaultExpiry (line 43) | public static function defaultExpiry(): string method logDescriptor (line 51) | public function logDescriptor(): string method getUrl (line 59) | public function getUrl(string $path = ''): string FILE: app/Api/ApiTokenGuard.php class ApiTokenGuard (line 15) | class ApiTokenGuard implements Guard method __construct (line 39) | public function __construct(Request $request, LoginService $loginService) method user (line 48) | public function user() method authenticate (line 76) | public function authenticate() method getAuthorisedUserFromRequest (line 94) | protected function getAuthorisedUserFromRequest(): Authenticatable method validateTokenHeaderValue (line 118) | protected function validateTokenHeaderValue(string $authToken): void method validateToken (line 135) | protected function validateToken(?ApiToken $token, string $secret): void method validate (line 158) | public function validate(array $credentials = []) method logout (line 178) | public function logout() FILE: app/Api/ListingResponseBuilder.php class ListingResponseBuilder (line 11) | class ListingResponseBuilder method __construct (line 43) | public function __construct(Builder $query, Request $request, array $f... method toResponse (line 53) | public function toResponse(): JsonResponse method modifyResults (line 75) | public function modifyResults(callable $modifier): void method fetchData (line 83) | protected function fetchData(Builder $query): Collection method filterQuery (line 94) | protected function filterQuery(Builder $query): Builder method requestFilterToQueryFilter (line 114) | protected function requestFilterToQueryFilter($fieldKey, $value): ?array method sortQuery (line 137) | protected function sortQuery(Builder $query): Builder method countAndOffsetQuery (line 160) | protected function countAndOffsetQuery(Builder $query): Builder FILE: app/Api/UserApiTokenController.php class UserApiTokenController (line 13) | class UserApiTokenController extends Controller method create (line 18) | public function create(Request $request, int $userId) method store (line 37) | public function store(Request $request, int $userId) method edit (line 73) | public function edit(Request $request, int $userId, int $tokenId) method update (line 94) | public function update(Request $request, int $userId, int $tokenId) method delete (line 115) | public function delete(int $userId, int $tokenId) method destroy (line 130) | public function destroy(int $userId, int $tokenId) method checkPermissionAndFetchUserToken (line 145) | protected function checkPermissionAndFetchUserToken(int $userId, int $... method updateContext (line 161) | protected function updateContext(Request $request): void method getRedirectPath (line 173) | protected function getRedirectPath(User $relatedUser): string FILE: app/App/AppVersion.php class AppVersion (line 5) | class AppVersion method get (line 12) | public static function get(): string FILE: app/App/Application.php class Application (line 5) | class Application extends \Illuminate\Foundation\Application method configPath (line 14) | public function configPath($path = '') FILE: app/App/HomeController.php class HomeController (line 15) | class HomeController extends Controller method __construct (line 17) | public function __construct( method index (line 25) | public function index( FILE: app/App/MailNotification.php class MailNotification (line 12) | abstract class MailNotification extends Notification implements ShouldQueue method toMail (line 19) | abstract public function toMail(User $notifiable): MailMessage; method via (line 28) | public function via($notifiable) method newMailMessage (line 36) | protected function newMailMessage(?LocaleDefinition $locale = null): M... FILE: app/App/MetaController.php class MetaController (line 8) | class MetaController extends Controller method robots (line 13) | public function robots() method notFound (line 30) | public function notFound() method favicon (line 40) | public function favicon(FaviconHandler $favicons) method pwaManifest (line 49) | public function pwaManifest(PwaManifestBuilder $manifestBuilder) method licenses (line 57) | public function licenses() method opensearch (line 71) | public function opensearch() FILE: app/App/Model.php class Model (line 7) | class Model extends EloquentModel method getRawAttribute (line 15) | public function getRawAttribute(string $key) FILE: app/App/Providers/AppServiceProvider.php class AppServiceProvider (line 23) | class AppServiceProvider extends ServiceProvider method register (line 48) | public function register(): void method boot (line 58) | public function boot(): void FILE: app/App/Providers/AuthServiceProvider.php class AuthServiceProvider (line 17) | class AuthServiceProvider extends ServiceProvider method boot (line 22) | public function boot(): void method register (line 60) | public function register(): void FILE: app/App/Providers/EventServiceProvider.php class EventServiceProvider (line 13) | class EventServiceProvider extends ServiceProvider method boot (line 33) | public function boot(): void method shouldDiscoverEvents (line 41) | public function shouldDiscoverEvents(): bool method configureEmailVerification (line 49) | protected function configureEmailVerification(): void FILE: app/App/Providers/RouteServiceProvider.php class RouteServiceProvider (line 14) | class RouteServiceProvider extends ServiceProvider method boot (line 28) | public function boot(): void method mapWebRoutes (line 43) | protected function mapWebRoutes(): void method mapApiRoutes (line 65) | protected function mapApiRoutes(): void method configureRateLimiting (line 79) | protected function configureRateLimiting(): void FILE: app/App/Providers/ThemeServiceProvider.php class ThemeServiceProvider (line 11) | class ThemeServiceProvider extends ServiceProvider method register (line 16) | public function register(): void method boot (line 25) | public function boot(): void FILE: app/App/Providers/TranslationServiceProvider.php class TranslationServiceProvider (line 10) | class TranslationServiceProvider extends BaseProvider method register (line 15) | public function register(): void method registerLoader (line 43) | protected function registerLoader(): void FILE: app/App/Providers/ValidationRuleServiceProvider.php class ValidationRuleServiceProvider (line 9) | class ValidationRuleServiceProvider extends ServiceProvider method boot (line 14) | public function boot(): void FILE: app/App/Providers/ViewTweaksServiceProvider.php class ViewTweaksServiceProvider (line 12) | class ViewTweaksServiceProvider extends ServiceProvider method register (line 14) | public function register() method boot (line 26) | public function boot(): void FILE: app/App/PwaManifestBuilder.php class PwaManifestBuilder (line 5) | class PwaManifestBuilder method build (line 7) | public function build(): array FILE: app/App/SluggableInterface.php type SluggableInterface (line 11) | interface SluggableInterface FILE: app/App/SystemApiController.php class SystemApiController (line 8) | class SystemApiController extends ApiController method read (line 14) | public function read(): JsonResponse FILE: app/App/helpers.php function versioned_asset (line 16) | function versioned_asset(string $file = ''): string function user (line 34) | function user(): User function userCan (line 43) | function userCan(string|Permission $permission, ?Model $ownable = null):... function userCanOnAny (line 59) | function userCanOnAny(string|Permission $action, string $entityClass = '... function setting (line 71) | function setting(?string $key = null, mixed $default = null): mixed function theme_path (line 86) | function theme_path(string $path = ''): ?string FILE: app/Console/Commands/AssignSortRuleCommand.php class AssignSortRuleCommand (line 10) | class AssignSortRuleCommand extends Command method handle (line 33) | public function handle(BookSorter $sorter): int method listSortRules (line 87) | protected function listSortRules(): int FILE: app/Console/Commands/CleanupImagesCommand.php class CleanupImagesCommand (line 9) | class CleanupImagesCommand extends Command method handle (line 31) | public function handle(ImageService $imageService): int method showDeletedImages (line 62) | protected function showDeletedImages($paths): void FILE: app/Console/Commands/ClearActivityCommand.php class ClearActivityCommand (line 8) | class ClearActivityCommand extends Command method handle (line 27) | public function handle(): int FILE: app/Console/Commands/ClearRevisionsCommand.php class ClearRevisionsCommand (line 8) | class ClearRevisionsCommand extends Command method handle (line 29) | public function handle(): int FILE: app/Console/Commands/ClearViewsCommand.php class ClearViewsCommand (line 8) | class ClearViewsCommand extends Command method handle (line 27) | public function handle(): int FILE: app/Console/Commands/CopyShelfPermissionsCommand.php class CopyShelfPermissionsCommand (line 9) | class CopyShelfPermissionsCommand extends Command method handle (line 31) | public function handle(PermissionsUpdater $permissionsUpdater, Bookshe... FILE: app/Console/Commands/CreateAdminCommand.php class CreateAdminCommand (line 12) | class CreateAdminCommand extends Command method handle (line 37) | public function handle(UserRepo $userRepo): int method handleInitialAdminIfExists (line 92) | protected function handleInitialAdminIfExists(UserRepo $userRepo, arra... method gatherDetails (line 118) | protected function gatherDetails(bool $generatePassword, bool $initial... method snakeCaseOptions (line 153) | protected function snakeCaseOptions(): array FILE: app/Console/Commands/DeleteUsersCommand.php class DeleteUsersCommand (line 9) | class DeleteUsersCommand extends Command method handle (line 28) | public function handle(UserRepo $userRepo): int FILE: app/Console/Commands/HandlesSingleUser.php type HandlesSingleUser (line 12) | trait HandlesSingleUser method fetchProvidedUser (line 19) | private function fetchProvidedUser(): User FILE: app/Console/Commands/InstallModuleCommand.php class InstallModuleCommand (line 14) | class InstallModuleCommand extends Command method handle (line 36) | public function handle(): int method handleExistingModulesWithSameName (line 98) | protected function handleExistingModulesWithSameName(array $existingMo... method getModuleFolder (line 128) | protected function getModuleFolder(string $themeFolder): string|null method getThemeFolder (line 148) | protected function getThemeFolder(): string|null method validateAndGetModuleInfoFromZip (line 176) | protected function validateAndGetModuleInfoFromZip(ThemeModuleZip $zip... method downloadModuleFile (line 198) | protected function downloadModuleFile(string $location): string|null method getPathToZip (line 263) | protected function getPathToZip(string $location): string|null method cleanup (line 306) | protected function cleanup(): void FILE: app/Console/Commands/RefreshAvatarCommand.php class RefreshAvatarCommand (line 10) | class RefreshAvatarCommand extends Command method handle (line 33) | public function handle(UserAvatars $userAvatar): int method processUsers (line 60) | private function processUsers(array $users, UserAvatars $userAvatar): int method fetchAvatar (line 106) | private function fetchAvatar(UserAvatars $userAvatar, User $user): bool FILE: app/Console/Commands/RegeneratePermissionsCommand.php class RegeneratePermissionsCommand (line 9) | class RegeneratePermissionsCommand extends Command method handle (line 29) | public function handle(JointPermissionBuilder $permissionBuilder): int FILE: app/Console/Commands/RegenerateReferencesCommand.php class RegenerateReferencesCommand (line 9) | class RegenerateReferencesCommand extends Command method handle (line 29) | public function handle(ReferenceStore $references): int FILE: app/Console/Commands/RegenerateSearchCommand.php class RegenerateSearchCommand (line 10) | class RegenerateSearchCommand extends Command method handle (line 30) | public function handle(SearchIndex $searchIndex): int FILE: app/Console/Commands/ResetMfaCommand.php class ResetMfaCommand (line 8) | class ResetMfaCommand extends Command method handle (line 32) | public function handle(): int FILE: app/Console/Commands/UpdateUrlCommand.php class UpdateUrlCommand (line 8) | class UpdateUrlCommand extends Command method handle (line 30) | public function handle(Connection $db): int method replaceValueInTable (line 94) | protected function replaceValueInTable( method checkUserOkayToProceed (line 113) | protected function checkUserOkayToProceed(string $oldUrl, string $newU... FILE: app/Console/Commands/UpgradeDatabaseEncodingCommand.php class UpgradeDatabaseEncodingCommand (line 8) | class UpgradeDatabaseEncodingCommand extends Command method handle (line 29) | public function handle(): int FILE: app/Console/Kernel.php class Kernel (line 8) | class Kernel extends ConsoleKernel method schedule (line 17) | protected function schedule(Schedule $schedule) method commands (line 27) | protected function commands() FILE: app/Entities/BreadcrumbsViewComposer.php class BreadcrumbsViewComposer (line 9) | class BreadcrumbsViewComposer method __construct (line 11) | public function __construct( method compose (line 19) | public function compose(View $view): void FILE: app/Entities/Controllers/BookApiController.php class BookApiController (line 21) | class BookApiController extends ApiController method __construct (line 23) | public function __construct( method list (line 34) | public function list() method create (line 53) | public function create(Request $request) method read (line 69) | public function read(string $id) method update (line 104) | public function update(Request $request, string $id) method delete (line 121) | public function delete(string $id) method forJsonDisplay (line 131) | protected function forJsonDisplay(Book $book): Book method rules (line 144) | protected function rules(): array FILE: app/Entities/Controllers/BookController.php class BookController (line 29) | class BookController extends Controller method __construct (line 31) | public function __construct( method index (line 44) | public function index(Request $request) method create (line 77) | public function create(?string $shelfSlug = null) method store (line 100) | public function store(Request $request, ?string $shelfSlug = null) method show (line 130) | public function show(Request $request, ActivityQueries $activities, st... method edit (line 166) | public function edit(string $slug) method update (line 182) | public function update(Request $request, string $slug) method showDelete (line 209) | public function showDelete(string $bookSlug) method destroy (line 223) | public function destroy(string $bookSlug) method showCopy (line 243) | public function showCopy(string $bookSlug) method copy (line 260) | public function copy(Request $request, Cloner $cloner, string $bookSlug) method convertToShelf (line 276) | public function convertToShelf(HierarchyTransformer $transformer, stri... FILE: app/Entities/Controllers/BookshelfApiController.php class BookshelfApiController (line 15) | class BookshelfApiController extends ApiController method __construct (line 17) | public function __construct( method list (line 26) | public function list() method create (line 47) | public function create(Request $request) method read (line 61) | public function read(string $id) method update (line 85) | public function update(Request $request, string $id) method delete (line 104) | public function delete(string $id) method forJsonDisplay (line 114) | protected function forJsonDisplay(Bookshelf $shelf): Bookshelf method rules (line 127) | protected function rules(): array FILE: app/Entities/Controllers/BookshelfController.php class BookshelfController (line 22) | class BookshelfController extends Controller method __construct (line 24) | public function __construct( method index (line 37) | public function index(Request $request) method create (line 72) | public function create() method store (line 87) | public function store(Request $request) method show (line 108) | public function show(Request $request, ActivityQueries $activities, st... method edit (line 156) | public function edit(string $slug) method update (line 182) | public function update(Request $request, string $slug) method showDelete (line 208) | public function showDelete(string $slug) method destroy (line 223) | public function destroy(string $slug) FILE: app/Entities/Controllers/ChapterApiController.php class ChapterApiController (line 16) | class ChapterApiController extends ApiController method __construct (line 39) | public function __construct( method list (line 49) | public function list() method create (line 63) | public function create(Request $request) method read (line 79) | public function read(string $id) method update (line 101) | public function update(Request $request, string $id) method delete (line 130) | public function delete(string $id) method forJsonDisplay (line 140) | protected function forJsonDisplay(Chapter $chapter): Chapter FILE: app/Entities/Controllers/ChapterController.php class ChapterController (line 27) | class ChapterController extends Controller method __construct (line 29) | public function __construct( method create (line 40) | public function create(string $bookSlug) method store (line 58) | public function store(Request $request, string $bookSlug) method show (line 78) | public function show(string $bookSlug, string $chapterSlug) method edit (line 114) | public function edit(string $bookSlug, string $chapterSlug) method update (line 129) | public function update(Request $request, string $bookSlug, string $cha... method showDelete (line 151) | public function showDelete(string $bookSlug, string $chapterSlug) method destroy (line 167) | public function destroy(string $bookSlug, string $chapterSlug) method showMove (line 182) | public function showMove(string $bookSlug, string $chapterSlug) method move (line 200) | public function move(Request $request, string $bookSlug, string $chapt... method showCopy (line 229) | public function showCopy(string $bookSlug, string $chapterSlug) method copy (line 247) | public function copy(Request $request, Cloner $cloner, string $bookSlu... method convertToBook (line 272) | public function convertToBook(HierarchyTransformer $transformer, strin... FILE: app/Entities/Controllers/PageApiController.php class PageApiController (line 15) | class PageApiController extends ApiController method __construct (line 38) | public function __construct( method list (line 48) | public function list() method create (line 72) | public function create(Request $request) method read (line 105) | public function read(string $id) method update (line 127) | public function update(Request $request, string $id) method delete (line 164) | public function delete(string $id) FILE: app/Entities/Controllers/PageController.php class PageController (line 32) | class PageController extends Controller method __construct (line 34) | public function __construct( method create (line 47) | public function create(string $bookSlug, ?string $chapterSlug = null) method createAsGuest (line 75) | public function createAsGuest(Request $request, string $bookSlug, ?str... method editDraft (line 102) | public function editDraft(Request $request, string $bookSlug, int $pag... method store (line 119) | public function store(Request $request, string $bookSlug, int $pageId) method show (line 139) | public function show(string $bookSlug, string $pageSlug) method getPageAjax (line 182) | public function getPageAjax(int $pageId) method edit (line 200) | public function edit(Request $request, string $bookSlug, string $pageS... method update (line 221) | public function update(Request $request, string $bookSlug, string $pag... method saveDraft (line 239) | public function saveDraft(Request $request, int $pageId) method redirectFromLink (line 264) | public function redirectFromLink(int $pageId) method showDelete (line 276) | public function showDelete(string $bookSlug, string $pageSlug) method showDeleteDraft (line 298) | public function showDeleteDraft(string $bookSlug, int $pageId) method destroy (line 321) | public function destroy(string $bookSlug, string $pageSlug) method destroyDraft (line 338) | public function destroyDraft(string $bookSlug, int $pageId) method showRecentlyUpdated (line 359) | public function showRecentlyUpdated() method showMove (line 387) | public function showMove(string $bookSlug, string $pageSlug) method move (line 405) | public function move(Request $request, string $bookSlug, string $pageS... method showCopy (line 434) | public function showCopy(string $bookSlug, string $pageSlug) method copy (line 451) | public function copy(Request $request, Cloner $cloner, string $bookSlu... FILE: app/Entities/Controllers/PageRevisionController.php class PageRevisionController (line 21) | class PageRevisionController extends Controller method __construct (line 23) | public function __construct( method index (line 35) | public function index(Request $request, string $bookSlug, string $page... method show (line 66) | public function show(string $bookSlug, string $pageSlug, int $revisionId) method changes (line 95) | public function changes(string $bookSlug, string $pageSlug, int $revis... method restore (line 130) | public function restore(string $bookSlug, string $pageSlug, int $revis... method destroy (line 145) | public function destroy(string $bookSlug, string $pageSlug, int $revId) method destroyUserDraft (line 171) | public function destroyUserDraft(string $pageId) FILE: app/Entities/Controllers/PageTemplateController.php class PageTemplateController (line 11) | class PageTemplateController extends Controller method __construct (line 13) | public function __construct( method list (line 22) | public function list(Request $request) method get (line 54) | public function get(int $templateId) FILE: app/Entities/Controllers/RecycleBinApiController.php class RecycleBinApiController (line 16) | class RecycleBinApiController extends ApiController method __construct (line 18) | public function __construct() method list (line 36) | public function list() method restore (line 52) | public function restore(DeletionRepo $deletionRepo, string $deletionId) method destroy (line 64) | public function destroy(DeletionRepo $deletionRepo, string $deletionId) method listFormatter (line 74) | protected function listFormatter(Deletion $deletion): void method withTrashedQuery (line 96) | protected static function withTrashedQuery(Builder $query): void FILE: app/Entities/Controllers/RecycleBinController.php class RecycleBinController (line 13) | class RecycleBinController extends Controller method __construct (line 21) | public function __construct() method index (line 34) | public function index() method showRestore (line 48) | public function showRestore(string $id) method restore (line 79) | public function restore(DeletionRepo $deletionRepo, string $id) method showDestroy (line 91) | public function showDestroy(string $id) method destroy (line 106) | public function destroy(DeletionRepo $deletionRepo, string $id) method empty (line 120) | public function empty(TrashCan $trash) FILE: app/Entities/EntityExistsRule.php class EntityExistsRule (line 7) | class EntityExistsRule implements \Stringable method __construct (line 9) | public function __construct( method __toString (line 14) | public function __toString() FILE: app/Entities/EntityProvider.php class EntityProvider (line 19) | class EntityProvider method __construct (line 27) | public function __construct() method all (line 42) | public function all(): array method get (line 55) | public function get(string $type): Entity method getMorphClasses (line 70) | public function getMorphClasses(array $types): array FILE: app/Entities/Models/Book.php class Book (line 29) | class Book extends Entity implements HasDescriptionInterface, HasCoverIn... method getUrl (line 42) | public function getUrl(string $path = ''): string method pages (line 51) | public function pages(): HasMany method directPages (line 59) | public function directPages(): HasMany method chapters (line 68) | public function chapters(): HasMany method shelves (line 76) | public function shelves(): BelongsToMany method getDirectVisibleChildren (line 84) | public function getDirectVisibleChildren(): Collection method defaultTemplate (line 92) | public function defaultTemplate(): EntityDefaultTemplate method cover (line 97) | public function cover(): BelongsTo method coverInfo (line 102) | public function coverInfo(): EntityCover method sortRule (line 110) | public function sortRule(): BelongsTo FILE: app/Entities/Models/BookChild.php class BookChild (line 15) | abstract class BookChild extends Entity method book (line 21) | public function book(): BelongsTo FILE: app/Entities/Models/Bookshelf.php class Bookshelf (line 15) | class Bookshelf extends Entity implements HasDescriptionInterface, HasCo... method books (line 29) | public function books(): BelongsToMany method visibleBooks (line 40) | public function visibleBooks(): BelongsToMany method getUrl (line 48) | public function getUrl(string $path = ''): string method contains (line 56) | public function contains(Book $book): bool method appendBook (line 64) | public function appendBook(Book $book): void method coverInfo (line 74) | public function coverInfo(): EntityCover method cover (line 79) | public function cover(): BelongsTo FILE: app/Entities/Models/Chapter.php class Chapter (line 16) | class Chapter extends BookChild implements HasDescriptionInterface, HasD... method pages (line 30) | public function pages(string $dir = 'ASC'): HasMany method getUrl (line 38) | public function getUrl(string $path = ''): string method getVisiblePages (line 55) | public function getVisiblePages(): Collection method defaultTemplate (line 64) | public function defaultTemplate(): EntityDefaultTemplate FILE: app/Entities/Models/ContainerTrait.php type ContainerTrait (line 11) | trait ContainerTrait method descriptionInfo (line 13) | public function descriptionInfo(): EntityHtmlDescription method relatedData (line 21) | public function relatedData(): HasOne FILE: app/Entities/Models/DeletableInterface.php type DeletableInterface (line 11) | interface DeletableInterface method deletions (line 13) | public function deletions(): MorphMany; FILE: app/Entities/Models/Deletion.php class Deletion (line 19) | class Deletion extends Model implements Loggable method deletable (line 28) | public function deletable(): MorphTo method deleter (line 36) | public function deleter(): BelongsTo method createForEntity (line 44) | public static function createForEntity(Entity $entity): self method logDescriptor (line 56) | public function logDescriptor(): string method getUrl (line 70) | public function getUrl(string $path = 'restore'): string FILE: app/Entities/Models/Entity.php class Entity (line 55) | abstract class Entity extends Model implements method save (line 110) | public function save(array $options = []): bool method isContainer (line 140) | public function isContainer(): bool method scopeVisible (line 150) | public function scopeVisible(Builder $query): Builder method scopeWithLastView (line 158) | public function scopeWithLastView(Builder $query) method scopeWithViewCount (line 172) | public function scopeWithViewCount(Builder $query): void method matches (line 186) | public function matches(self $entity): bool method matchesOrContains (line 194) | public function matchesOrContains(self $entity): bool method activity (line 214) | public function activity(): MorphMany method views (line 223) | public function views(): MorphMany method tags (line 231) | public function tags(): MorphMany method comments (line 241) | public function comments(bool $orderByCreated = true): MorphMany method searchTerms (line 251) | public function searchTerms(): MorphMany method permissions (line 259) | public function permissions(): MorphMany method hasPermissions (line 267) | public function hasPermissions(): bool method jointPermissions (line 275) | public function jointPermissions(): MorphMany method ownedBy (line 284) | public function ownedBy(): BelongsTo method getOwnerFieldName (line 289) | public function getOwnerFieldName(): string method deletions (line 297) | public function deletions(): MorphMany method referencesFrom (line 305) | public function referencesFrom(): MorphMany method referencesTo (line 313) | public function referencesTo(): MorphMany method isA (line 324) | public static function isA(string $type): bool method getType (line 332) | public static function getType(): string method getShortName (line 342) | public function getShortName(int $length = 25): string method getExcerpt (line 354) | public function getExcerpt(int $length = 100): string method getUrl (line 368) | abstract public function getUrl(string $path = '/'): string; method getParent (line 375) | public function getParent(): ?self method rebuildPermissions (line 394) | public function rebuildPermissions(): void method indexForSearch (line 402) | public function indexForSearch(): void method favourites (line 410) | public function favourites(): MorphMany method isFavourite (line 418) | public function isFavourite(): bool method watches (line 428) | public function watches(): MorphMany method slugHistory (line 436) | public function slugHistory(): MorphMany method logDescriptor (line 444) | public function logDescriptor(): string method relatedData (line 452) | abstract public function relatedData(): HasOne; method getContentsAttributes (line 458) | protected function getContentsAttributes(): array method instanceFromType (line 475) | public static function instanceFromType(string $type): self FILE: app/Entities/Models/EntityContainerData.php class EntityContainerData (line 17) | class EntityContainerData extends Model method setKeysForSaveQuery (line 34) | public function setKeysForSaveQuery($query): Builder method setKeysForSelectQuery (line 45) | protected function setKeysForSelectQuery($query): Builder FILE: app/Entities/Models/EntityPageData.php class EntityPageData (line 10) | class EntityPageData extends Model FILE: app/Entities/Models/EntityQueryBuilder.php class EntityQueryBuilder (line 8) | class EntityQueryBuilder extends Builder method __construct (line 13) | public function __construct(QueryBuilder $query) method withoutGlobalScope (line 20) | public function withoutGlobalScope($scope): static method forceDelete (line 34) | public function forceDelete() FILE: app/Entities/Models/EntityScope.php class EntityScope (line 10) | class EntityScope implements Scope method apply (line 15) | public function apply(Builder $builder, Model $model): void FILE: app/Entities/Models/EntityTable.php class EntityTable (line 20) | class EntityTable extends Model method scopeVisible (line 29) | public function scopeVisible(Builder $query): Builder method jointPermissions (line 37) | public function jointPermissions(): HasMany method tags (line 46) | public function tags(): HasMany method permissions (line 55) | public function permissions(): HasMany method views (line 64) | public function views(): HasMany FILE: app/Entities/Models/HasCoverInterface.php type HasCoverInterface (line 9) | interface HasCoverInterface method coverInfo (line 11) | public function coverInfo(): EntityCover; method cover (line 17) | public function cover(): BelongsTo; FILE: app/Entities/Models/HasDefaultTemplateInterface.php type HasDefaultTemplateInterface (line 7) | interface HasDefaultTemplateInterface method defaultTemplate (line 9) | public function defaultTemplate(): EntityDefaultTemplate; FILE: app/Entities/Models/HasDescriptionInterface.php type HasDescriptionInterface (line 7) | interface HasDescriptionInterface method descriptionInfo (line 9) | public function descriptionInfo(): EntityHtmlDescription; FILE: app/Entities/Models/Page.php class Page (line 31) | class Page extends BookChild method scopeVisible (line 48) | public function scopeVisible(Builder $query): Builder method chapter (line 58) | public function chapter(): BelongsTo method hasChapter (line 66) | public function hasChapter(): bool method revisions (line 75) | public function revisions(): HasMany method currentRevision (line 86) | public function currentRevision(): HasOne method allRevisions (line 98) | public function allRevisions(): HasMany method attachments (line 106) | public function attachments(): HasMany method getUrl (line 114) | public function getUrl(string $path = ''): string method getPermalink (line 130) | public function getPermalink(): string method forJsonDisplay (line 138) | public function forJsonDisplay(): self method relatedData (line 151) | public function relatedData(): HasOne FILE: app/Entities/Models/PageRevision.php class PageRevision (line 32) | class PageRevision extends Model implements Loggable method createdBy (line 42) | public function createdBy(): BelongsTo method page (line 50) | public function page(): BelongsTo method getUrl (line 58) | public function getUrl(string $path = ''): string method getPreviousRevision (line 66) | public function getPreviousRevision(): ?PageRevision method isA (line 86) | public static function isA(string $type): bool method logDescriptor (line 91) | public function logDescriptor(): string FILE: app/Entities/Models/SlugHistory.php class SlugHistory (line 17) | class SlugHistory extends Model method jointPermissions (line 23) | public function jointPermissions(): HasMany FILE: app/Entities/Queries/BookQueries.php class BookQueries (line 12) | class BookQueries implements ProvidesEntityQueries method start (line 22) | public function start(): Builder method findVisibleById (line 27) | public function findVisibleById(int $id): ?Book method findVisibleByIdOrFail (line 32) | public function findVisibleByIdOrFail(int $id): Book method findVisibleBySlugOrFail (line 37) | public function findVisibleBySlugOrFail(string $slug): Book method visibleForList (line 52) | public function visibleForList(): Builder method visibleForContent (line 58) | public function visibleForContent(): Builder method visibleForListWithCover (line 63) | public function visibleForListWithCover(): Builder method recentlyViewedForCurrentUser (line 68) | public function recentlyViewedForCurrentUser(): Builder method popularForList (line 76) | public function popularForList(): Builder FILE: app/Entities/Queries/BookshelfQueries.php class BookshelfQueries (line 12) | class BookshelfQueries implements ProvidesEntityQueries method start (line 22) | public function start(): Builder method findVisibleById (line 27) | public function findVisibleById(int $id): ?Bookshelf method findVisibleByIdOrFail (line 32) | public function findVisibleByIdOrFail(int $id): Bookshelf method findVisibleBySlugOrFail (line 43) | public function findVisibleBySlugOrFail(string $slug): Bookshelf method visibleForList (line 58) | public function visibleForList(): Builder method visibleForContent (line 63) | public function visibleForContent(): Builder method visibleForListWithCover (line 68) | public function visibleForListWithCover(): Builder method recentlyViewedForCurrentUser (line 73) | public function recentlyViewedForCurrentUser(): Builder method popularForList (line 81) | public function popularForList(): Builder FILE: app/Entities/Queries/ChapterQueries.php class ChapterQueries (line 12) | class ChapterQueries implements ProvidesEntityQueries method start (line 19) | public function start(): Builder method findVisibleById (line 24) | public function findVisibleById(int $id): ?Chapter method findVisibleByIdOrFail (line 29) | public function findVisibleByIdOrFail(int $id): Chapter method findVisibleBySlugsOrFail (line 34) | public function findVisibleBySlugsOrFail(string $bookSlug, string $cha... method usingSlugs (line 53) | public function usingSlugs(string $bookSlug, string $chapterSlug): Bui... method visibleForList (line 62) | public function visibleForList(): Builder method visibleForContent (line 74) | public function visibleForContent(): Builder FILE: app/Entities/Queries/EntityQueries.php class EntityQueries (line 14) | class EntityQueries method __construct (line 16) | public function __construct( method findVisibleByStringIdentifier (line 31) | public function findVisibleByStringIdentifier(string $identifier): ?En... method findVisibleById (line 43) | public function findVisibleById(string $type, int $id): ?Entity method findVisibleByOldSlugs (line 52) | public function findVisibleByOldSlugs(string $type, string $slug, stri... method visibleForList (line 67) | public function visibleForList(): Builder method visibleForListForType (line 92) | public function visibleForListForType(string $entityType): Builder method visibleForContentForType (line 103) | public function visibleForContentForType(string $entityType): Builder method getQueriesForType (line 109) | protected function getQueriesForType(string $type): ProvidesEntityQueries FILE: app/Entities/Queries/PageQueries.php class PageQueries (line 12) | class PageQueries implements ProvidesEntityQueries method start (line 27) | public function start(): Builder method findVisibleById (line 32) | public function findVisibleById(int $id): ?Page method findVisibleByIdOrFail (line 37) | public function findVisibleByIdOrFail(int $id): Page method findVisibleBySlugsOrFail (line 48) | public function findVisibleBySlugsOrFail(string $bookSlug, string $pag... method usingSlugs (line 66) | public function usingSlugs(string $bookSlug, string $pageSlug): Builder method visibleForList (line 78) | public function visibleForList(): Builder method visibleForContent (line 88) | public function visibleForContent(): Builder method visibleForChapterList (line 93) | public function visibleForChapterList(int $chapterId): Builder method visibleWithContents (line 101) | public function visibleWithContents(): Builder method currentUserDraftsForList (line 108) | public function currentUserDraftsForList(): Builder method visibleTemplates (line 115) | public function visibleTemplates(bool $includeContents = false): Builder method mergeBookSlugForSelect (line 121) | protected function mergeBookSlugForSelect(array $columns): array FILE: app/Entities/Queries/PageRevisionQueries.php class PageRevisionQueries (line 8) | class PageRevisionQueries method start (line 10) | public function start(): Builder method findLatestVersionBySlugs (line 15) | public function findLatestVersionBySlugs(string $bookSlug, string $pag... method findLatestCurrentUserDraftsForPageId (line 28) | public function findLatestCurrentUserDraftsForPageId(int $pageId): ?Pa... method latestCurrentUserDraftsForPageId (line 36) | public function latestCurrentUserDraftsForPageId(int $pageId): Builder FILE: app/Entities/Queries/ProvidesEntityQueries.php type ProvidesEntityQueries (line 19) | interface ProvidesEntityQueries method start (line 25) | public function start(): Builder; method findVisibleById (line 30) | public function findVisibleById(int $id): ?Entity; method visibleForList (line 37) | public function visibleForList(): Builder; method visibleForContent (line 44) | public function visibleForContent(): Builder; FILE: app/Entities/Queries/QueryPopular.php class QueryPopular (line 12) | class QueryPopular method __construct (line 14) | public function __construct( method run (line 21) | public function run(int $count, int $page, array $filterModels): Colle... FILE: app/Entities/Queries/QueryRecentlyViewed.php class QueryRecentlyViewed (line 10) | class QueryRecentlyViewed method __construct (line 12) | public function __construct( method run (line 18) | public function run(int $count, int $page): Collection FILE: app/Entities/Queries/QueryTopFavourites.php class QueryTopFavourites (line 10) | class QueryTopFavourites method __construct (line 12) | public function __construct( method run (line 18) | public function run(int $count, int $skip = 0) FILE: app/Entities/Repos/BaseRepo.php class BaseRepo (line 21) | class BaseRepo method __construct (line 23) | public function __construct( method create (line 41) | public function create(Entity $entity, array $input): Entity method update (line 77) | public function update(Entity $entity, array $input): Entity method updateCoverImage (line 115) | public function updateCoverImage(Entity&HasCoverInterface $entity, ?Up... method sortParent (line 136) | public function sortParent(Entity $entity): void method updateDescription (line 147) | protected function updateDescription(Entity $entity, array $input): void method refreshSlug (line 166) | public function refreshSlug(Entity $entity): void FILE: app/Entities/Repos/BookRepo.php class BookRepo (line 17) | class BookRepo method __construct (line 19) | public function __construct( method create (line 30) | public function create(array $input): Book method update (line 52) | public function update(Book $book, array $input): Book method updateCoverImage (line 76) | public function updateCoverImage(Book $book, ?UploadedFile $coverImage... method destroy (line 86) | public function destroy(Book $book): void FILE: app/Entities/Repos/BookshelfRepo.php class BookshelfRepo (line 13) | class BookshelfRepo method __construct (line 15) | public function __construct( method create (line 25) | public function create(array $input, array $bookIds): Bookshelf method update (line 39) | public function update(Bookshelf $shelf, array $input, ?array $bookIds... method updateBooks (line 61) | protected function updateBooks(Bookshelf $shelf, array $bookIds): void method destroy (line 98) | public function destroy(Bookshelf $shelf): void FILE: app/Entities/Repos/ChapterRepo.php class ChapterRepo (line 19) | class ChapterRepo method __construct (line 21) | public function __construct( method create (line 32) | public function create(array $input, Book $parentBook): Chapter method update (line 54) | public function update(Chapter $chapter, array $input): Chapter method destroy (line 75) | public function destroy(Chapter $chapter): void method move (line 90) | public function move(Chapter $chapter, string $parentIdentifier): Book FILE: app/Entities/Repos/DeletionRepo.php class DeletionRepo (line 10) | class DeletionRepo method __construct (line 12) | public function __construct( method restore (line 17) | public function restore(int $id): int method destroy (line 26) | public function destroy(int $id): int FILE: app/Entities/Repos/PageRepo.php class PageRepo (line 26) | class PageRepo method __construct (line 28) | public function __construct( method getNewDraftPage (line 42) | public function getNewDraftPage(Entity $parent): Page method publishDraft (line 83) | public function publishDraft(Page $draft, array $input): Page method setContentFromInput (line 110) | public function setContentFromInput(Page $page, array $input): void method update (line 119) | public function update(Page $page, array $input): Page method updateTemplateStatusAndContentFromInput (line 151) | protected function updateTemplateStatusAndContentFromInput(Page $page,... method updatePageDraft (line 186) | public function updatePageDraft(Page $page, array $input): Page|PageRe... method destroy (line 219) | public function destroy(Page $page): void method restoreRevision (line 229) | public function restoreRevision(Page $page, int $revisionId): Page method move (line 275) | public function move(Page $page, string $parentIdentifier): Entity method getNewPriority (line 303) | protected function getNewPriority(Page $page): int FILE: app/Entities/Repos/RevisionRepo.php class RevisionRepo (line 9) | class RevisionRepo method __construct (line 11) | public function __construct( method deleteDraftsForCurrentUser (line 19) | public function deleteDraftsForCurrentUser(Page $page): void method getNewDraftForCurrentUser (line 28) | public function getNewDraftForCurrentUser(Page $page): PageRevision method storeNewForPage (line 49) | public function storeNewForPage(Page $page, ?string $summary = null): ... method deleteOldRevisions (line 75) | protected function deleteOldRevisions(Page $page): void FILE: app/Entities/Tools/BookContents.php class BookContents (line 12) | class BookContents method __construct (line 16) | public function __construct( method getLastPriority (line 25) | public function getLastPriority(): int method getTree (line 41) | public function getTree(bool $showDrafts = false, bool $renderPages = ... method bookChildSortFunc (line 77) | protected function bookChildSortFunc(): callable method getPages (line 91) | protected function getPages(bool $showDrafts = false, bool $getPageCon... FILE: app/Entities/Tools/Cloner.php class Cloner (line 22) | class Cloner method __construct (line 26) | public function __construct( method clonePage (line 39) | public function clonePage(Page $original, Entity $parent, string $newN... method createPageClone (line 47) | protected function createPageClone(Page $original, Entity $parent, str... method cloneChapter (line 63) | public function cloneChapter(Chapter $original, Book $parent, string $... method createChapterClone (line 71) | protected function createChapterClone(Chapter $original, Book $parent,... method cloneBook (line 94) | public function cloneBook(Book $original, string $newName): Book method createBookClone (line 102) | protected function createBookClone(Book $original, string $newName): Book method entityToInputData (line 140) | public function entityToInputData(Entity $entity): array method copyEntityPermissions (line 159) | public function copyEntityPermissions(Entity $sourceEntity, Entity $ta... method imageToUploadedFile (line 171) | protected function imageToUploadedFile(Image $image): ?UploadedFile method entityTagsToInputArray (line 184) | protected function entityTagsToInputArray(Entity $entity): array method newReferenceChangeContext (line 196) | protected function newReferenceChangeContext(): ReferenceChangeContext FILE: app/Entities/Tools/EntityCover.php class EntityCover (line 11) | class EntityCover method __construct (line 13) | public function __construct( method imageQuery (line 18) | protected function imageQuery(): Builder method exists (line 26) | public function exists(): bool method getImage (line 34) | public function getImage(): Image|null method getUrl (line 51) | public function getUrl(int $width = 440, int $height = 250, string|nul... method setImage (line 67) | public function setImage(Image|null $image): void FILE: app/Entities/Tools/EntityDefaultTemplate.php class EntityDefaultTemplate (line 10) | class EntityDefaultTemplate method __construct (line 12) | public function __construct( method setFromId (line 20) | public function setFromId(int $templateId): void method get (line 43) | public function get(): Page|null FILE: app/Entities/Tools/EntityHtmlDescription.php class EntityHtmlDescription (line 11) | class EntityHtmlDescription method __construct (line 16) | public function __construct( method set (line 27) | public function set(string $html, string|null $plaintext = null): void method getHtml (line 47) | public function getHtml(bool $raw = false): string method getPlain (line 63) | public function getPlain(): string FILE: app/Entities/Tools/EntityHydrator.php class EntityHydrator (line 13) | class EntityHydrator method __construct (line 15) | public function __construct( method hydrate (line 26) | public function hydrate(array $entities, bool $loadTags = false, bool ... method loadTagsIntoModels (line 57) | protected function loadTagsIntoModels(array $entities): void method loadParentsIntoModels (line 96) | protected function loadParentsIntoModels(array $entities): void FILE: app/Entities/Tools/HierarchyTransformer.php class HierarchyTransformer (line 14) | class HierarchyTransformer method __construct (line 16) | public function __construct( method transformChapterToBook (line 29) | public function transformChapterToBook(Chapter $chapter): Book method transformBookToShelf (line 53) | public function transformBookToShelf(Book $book): Bookshelf FILE: app/Entities/Tools/Markdown/CheckboxConverter.php class CheckboxConverter (line 8) | class CheckboxConverter implements ConverterInterface method convert (line 10) | public function convert(ElementInterface $element): string method getSupportedTags (line 24) | public function getSupportedTags(): array FILE: app/Entities/Tools/Markdown/CustomDivConverter.php class CustomDivConverter (line 8) | class CustomDivConverter extends DivConverter method convert (line 10) | public function convert(ElementInterface $element): string FILE: app/Entities/Tools/Markdown/CustomImageConverter.php class CustomImageConverter (line 8) | class CustomImageConverter extends ImageConverter method convert (line 10) | public function convert(ElementInterface $element): string FILE: app/Entities/Tools/Markdown/CustomListItemRenderer.php class CustomListItemRenderer (line 14) | class CustomListItemRenderer implements NodeRendererInterface method __construct (line 18) | public function __construct() method render (line 26) | public function render(Node $node, ChildNodeRendererInterface $childRe... method startsTaskListItem (line 37) | private function startsTaskListItem(ListItem $block): bool FILE: app/Entities/Tools/Markdown/CustomParagraphConverter.php class CustomParagraphConverter (line 8) | class CustomParagraphConverter extends ParagraphConverter method convert (line 10) | public function convert(ElementInterface $element): string FILE: app/Entities/Tools/Markdown/CustomStrikeThroughExtension.php class CustomStrikeThroughExtension (line 10) | class CustomStrikeThroughExtension implements ExtensionInterface method register (line 12) | public function register(EnvironmentBuilderInterface $environment): void FILE: app/Entities/Tools/Markdown/CustomStrikethroughRenderer.php class CustomStrikethroughRenderer (line 16) | class CustomStrikethroughRenderer implements NodeRendererInterface method render (line 18) | public function render(Node $node, ChildNodeRendererInterface $childRe... FILE: app/Entities/Tools/Markdown/HtmlToMarkdown.php class HtmlToMarkdown (line 20) | class HtmlToMarkdown method __construct (line 24) | public function __construct(string $html) method convert (line 32) | public function convert(): string method prepareHtml (line 43) | protected function prepareHtml(string $html): string method getConverterEnvironment (line 55) | protected function getConverterEnvironment(): Environment FILE: app/Entities/Tools/Markdown/MarkdownToHtml.php class MarkdownToHtml (line 14) | class MarkdownToHtml method __construct (line 18) | public function __construct(string $markdown) method convert (line 23) | public function convert(): string FILE: app/Entities/Tools/Markdown/SpacedTagFallbackConverter.php class SpacedTagFallbackConverter (line 12) | class SpacedTagFallbackConverter implements ConverterInterface method convert (line 14) | public function convert(ElementInterface $element): string method getSupportedTags (line 19) | public function getSupportedTags(): array FILE: app/Entities/Tools/MixedEntityListLoader.php class MixedEntityListLoader (line 9) | class MixedEntityListLoader method __construct (line 11) | public function __construct( method loadIntoRelations (line 22) | public function loadIntoRelations(array $relations, string $relationNa... method idsByTypeToModelMap (line 52) | protected function idsByTypeToModelMap(array $idsByType, bool $eagerLo... method getRelationsToEagerLoad (line 74) | protected function getRelationsToEagerLoad(string $type): array FILE: app/Entities/Tools/MixedEntityRequestHelper.php class MixedEntityRequestHelper (line 8) | class MixedEntityRequestHelper method __construct (line 10) | public function __construct( method getVisibleEntityFromRequestData (line 21) | public function getVisibleEntityFromRequestData(array $requestData): E... method validationRules (line 32) | public function validationRules(): array FILE: app/Entities/Tools/NextPreviousContentLocator.php class NextPreviousContentLocator (line 12) | class NextPreviousContentLocator method __construct (line 21) | public function __construct(BookChild $relativeBookItem, Collection $b... method getNext (line 31) | public function getNext(): ?Entity method getPrevious (line 39) | public function getPrevious(): ?Entity method getCurrentIndex (line 47) | protected function getCurrentIndex(): ?int method treeToFlatOrderedCollection (line 61) | protected function treeToFlatOrderedCollection(Collection $bookTree): ... FILE: app/Entities/Tools/PageContent.php class PageContent (line 26) | class PageContent method __construct (line 30) | public function __construct( method setNewHTML (line 39) | public function setNewHTML(string $html, User $updater): void method setNewMarkdown (line 57) | public function setNewMarkdown(string $markdown, User $updater): void method extractBase64ImagesFromHtml (line 76) | protected function extractBase64ImagesFromHtml(string $htmlText, User ... method extractBase64ImagesFromMarkdown (line 103) | protected function extractBase64ImagesFromMarkdown(string $markdown, U... method base64ImageUriToUploadedImageUrl (line 136) | protected function base64ImageUriToUploadedImageUrl(string $uri, User ... method parseBase64ImageUri (line 181) | protected function parseBase64ImageUri(string $uri): array method formatHtml (line 195) | protected function formatHtml(string $htmlText): string method updateIdsRecursively (line 224) | protected function updateIdsRecursively(DOMNode $element, int $depth, ... method updateLinks (line 245) | protected function updateLinks(HtmlDocument $doc, array $changeMap): void method setUniqueId (line 268) | protected function setUniqueId(DOMNode $element, array &$idMap): array method toPlainText (line 303) | public function toPlainText(): string method render (line 313) | public function render(bool $blankIncludes = false): string method handlePostRender (line 352) | protected function handlePostRender(string $html): string method getContentCacheKey (line 358) | protected function getContentCacheKey(string $html): string method getContentProviderClosure (line 371) | protected function getContentProviderClosure(bool $blankIncludes): Clo... method getNavigation (line 405) | public function getNavigation(string $htmlContent): array method headerNodesToLevelList (line 421) | protected function headerNodesToLevelList(DOMNodeList $nodeList): array FILE: app/Entities/Tools/PageEditActivity.php class PageEditActivity (line 11) | class PageEditActivity method __construct (line 13) | public function __construct( method hasActiveEditing (line 21) | public function hasActiveEditing(): bool method activeEditingMessage (line 29) | public function activeEditingMessage(): string method getWarningMessagesForDraft (line 51) | public function getWarningMessagesForDraft(Page|PageRevision $draft): ... method hasPageBeenUpdatedSinceDraftCreated (line 69) | protected function hasPageBeenUpdatedSinceDraftCreated(PageRevision $d... method getEditingActiveDraftMessage (line 77) | public function getEditingActiveDraftMessage(PageRevision $draft): string method activePageEditingQuery (line 92) | protected function activePageEditingQuery(int $withinMinutes): Builder FILE: app/Entities/Tools/PageEditorData.php class PageEditorData (line 14) | class PageEditorData method __construct (line 19) | public function __construct( method getViewData (line 27) | public function getViewData(): array method getWarnings (line 32) | public function getWarnings(): array method build (line 37) | protected function build(): array method updateContentForEditor (line 90) | protected function updateContentForEditor(Page $page, PageEditorType $... method getEditorType (line 110) | protected function getEditorType(Page $page): PageEditorType FILE: app/Entities/Tools/PageEditorType.php method isHtmlBased (line 13) | public function isHtmlBased(): bool method fromRequestValue (line 21) | public static function fromRequestValue(string $value): static|null method forPage (line 27) | public static function forPage(Page $page): static|null method getSystemDefault (line 32) | public static function getSystemDefault(): static FILE: app/Entities/Tools/PageIncludeContent.php class PageIncludeContent (line 8) | class PageIncludeContent method __construct (line 16) | public function __construct( method fromHtmlAndTag (line 22) | public static function fromHtmlAndTag(string $html, PageIncludeTag $ta... method fromInlineHtml (line 46) | public static function fromInlineHtml(string $html): self method isInline (line 57) | public function isInline(): bool method isEmpty (line 62) | public function isEmpty(): bool method toDomNodes (line 70) | public function toDomNodes(): array method toHtml (line 75) | public function toHtml(): string FILE: app/Entities/Tools/PageIncludeParser.php class PageIncludeParser (line 11) | class PageIncludeParser method __construct (line 24) | public function __construct( method parse (line 34) | public function parse(): int method locateAndIsolateIncludeTags (line 68) | protected function locateAndIsolateIncludeTags(): array method splitTextNodesAtTags (line 92) | protected function splitTextNodesAtTags(DOMNode $textNode): array method replaceNodeWithNodes (line 125) | protected function replaceNodeWithNodes(DOMNode $toReplace, array $rep... method moveTagNodeToBesideParent (line 145) | protected function moveTagNodeToBesideParent(PageIncludeTag $tag, DOMN... method splitNodeAtChildNode (line 164) | protected function splitNodeAtChildNode(DOMElement $parentNode, DOMNod... method getParentParagraph (line 195) | protected function getParentParagraph(DOMNode $parent): ?DOMNode method cleanup (line 212) | protected function cleanup(): void FILE: app/Entities/Tools/PageIncludeTag.php class PageIncludeTag (line 7) | class PageIncludeTag method __construct (line 9) | public function __construct( method getPageId (line 18) | public function getPageId(): int method getSectionId (line 26) | public function getSectionId(): string FILE: app/Entities/Tools/ParentChanger.php class ParentChanger (line 9) | class ParentChanger method __construct (line 11) | public function __construct( method changeBook (line 20) | public function changeBook(BookChild $child, int $newBookId): void FILE: app/Entities/Tools/PermissionsUpdater.php class PermissionsUpdater (line 16) | class PermissionsUpdater method updateFromPermissionsForm (line 21) | public function updateFromPermissionsForm(Entity $entity, Request $req... method updateFromApiRequestData (line 46) | public function updateFromApiRequestData(Entity $entity, array $data):... method updateOwnerFromId (line 80) | protected function updateOwnerFromId(Entity $entity, int $newOwnerId):... method formatPermissionsFromRequestToEntityPermissions (line 91) | protected function formatPermissionsFromRequestToEntityPermissions(arr... method formatPermissionsFromApiRequestToEntityPermissions (line 107) | protected function formatPermissionsFromApiRequestToEntityPermissions(... method filterEntityPermissionDataUponRole (line 123) | protected function filterEntityPermissionDataUponRole(array $entityPer... method updateBookPermissionsFromShelf (line 145) | public function updateBookPermissionsFromShelf(Bookshelf $shelf, $chec... FILE: app/Entities/Tools/ShelfContext.php class ShelfContext (line 9) | class ShelfContext method __construct (line 13) | public function __construct( method getContextualShelfForBook (line 21) | public function getContextualShelfForBook(Book $book): ?Bookshelf method setShelfContext (line 38) | public function setShelfContext(int $shelfId): void method clearShelfContext (line 46) | public function clearShelfContext(): void FILE: app/Entities/Tools/SiblingFetcher.php class SiblingFetcher (line 13) | class SiblingFetcher method __construct (line 15) | public function __construct( method fetch (line 24) | public function fetch(string $entityType, int $entityId): Collection FILE: app/Entities/Tools/SlugGenerator.php class SlugGenerator (line 12) | class SlugGenerator method generate (line 18) | public function generate(SluggableInterface&Model $model, string $slug... method regenerateForEntity (line 31) | public function regenerateForEntity(Entity $entity): string method regenerateForUser (line 41) | public function regenerateForUser(User $user): string method formatNameAsSlug (line 51) | protected function formatNameAsSlug(string $name): string method slugInUse (line 65) | protected function slugInUse(string $slug, SluggableInterface&Model $m... FILE: app/Entities/Tools/SlugHistory.php class SlugHistory (line 13) | class SlugHistory method __construct (line 15) | public function __construct( method recordForEntity (line 23) | public function recordForEntity(Entity $entity): void method recordForBookChildren (line 55) | protected function recordForBookChildren(Book $book): void method lookupEntityIdUsingSlugs (line 71) | public function lookupEntityIdUsingSlugs(string $type, string $slug, s... method getLatestEntryForEntity (line 89) | protected function getLatestEntryForEntity(Entity $entity): SlugHistor... FILE: app/Entities/Tools/TrashCan.php class TrashCan (line 25) | class TrashCan method __construct (line 27) | public function __construct( method softDestroyShelf (line 37) | public function softDestroyShelf(Bookshelf $shelf) method softDestroyBook (line 49) | public function softDestroyBook(Book $book) method softDestroyChapter (line 70) | public function softDestroyChapter(Chapter $chapter, bool $recordDelet... method softDestroyPage (line 91) | public function softDestroyPage(Page $page, bool $recordDelete = true) method ensureDeletable (line 108) | protected function ensureDeletable(Entity $entity): void method destroyShelf (line 142) | protected function destroyShelf(Bookshelf $shelf): int method destroyBook (line 157) | protected function destroyBook(Book $book): int method destroyChapter (line 185) | protected function destroyChapter(Chapter $chapter): int method destroyPage (line 205) | protected function destroyPage(Page $page): int method getTrashedCounts (line 236) | public function getTrashedCounts(): array method empty (line 254) | public function empty(): int method destroyFromDeletion (line 270) | public function destroyFromDeletion(Deletion $deletion): int method restoreFromDeletion (line 289) | public function restoreFromDeletion(Deletion $deletion): int method autoClearOld (line 317) | public function autoClearOld(): int method restoreEntity (line 339) | protected function restoreEntity(Entity $entity): int method destroyEntity (line 370) | public function destroyEntity(Entity $entity): int method destroyCommonRelations (line 391) | protected function destroyCommonRelations(Entity $entity): void FILE: app/Exceptions/ApiAuthException.php class ApiAuthException (line 7) | class ApiAuthException extends \Exception implements HttpExceptionInterface method __construct (line 11) | public function __construct(string $message, int $statusCode = 401) method getStatusCode (line 17) | public function getStatusCode(): int method getHeaders (line 22) | public function getHeaders(): array FILE: app/Exceptions/BookStackExceptionHandlerPage.php class BookStackExceptionHandlerPage (line 8) | class BookStackExceptionHandlerPage implements ExceptionRenderer method render (line 10) | public function render($throwable) method safeReturn (line 20) | protected function safeReturn(callable $callback, $default = null) method getEnvironment (line 29) | protected function getEnvironment(): array FILE: app/Exceptions/ConfirmationEmailException.php class ConfirmationEmailException (line 5) | class ConfirmationEmailException extends NotifyException FILE: app/Exceptions/FileUploadException.php class FileUploadException (line 5) | class FileUploadException extends PrettyException FILE: app/Exceptions/Handler.php class Handler (line 18) | class Handler extends ExceptionHandler method report (line 59) | public function report(Throwable $exception) method render (line 69) | public function render($request, Throwable $e): SymfonyResponse method prepareForOutOfMemory (line 94) | public function prepareForOutOfMemory(callable $onOutOfMemory): void method forgetOutOfMemoryHandler (line 102) | public function forgetOutOfMemoryHandler(): void method isApiRequest (line 110) | protected function isApiRequest(Request $request): bool method renderApiException (line 118) | protected function renderApiException(Throwable $e): JsonResponse method unauthenticated (line 154) | protected function unauthenticated($request, AuthenticationException $... method invalidJson (line 168) | protected function invalidJson($request, ValidationException $exceptio... FILE: app/Exceptions/HttpFetchException.php class HttpFetchException (line 7) | class HttpFetchException extends Exception FILE: app/Exceptions/ImageUploadException.php class ImageUploadException (line 5) | class ImageUploadException extends PrettyException FILE: app/Exceptions/JsonDebugException.php class JsonDebugException (line 9) | class JsonDebugException extends Exception implements Responsable method __construct (line 16) | public function __construct(array $data) method toResponse (line 26) | public function toResponse($request): JsonResponse FILE: app/Exceptions/LdapException.php class LdapException (line 5) | class LdapException extends PrettyException FILE: app/Exceptions/LoginAttemptEmailNeededException.php class LoginAttemptEmailNeededException (line 5) | class LoginAttemptEmailNeededException extends LoginAttemptException FILE: app/Exceptions/LoginAttemptException.php class LoginAttemptException (line 5) | class LoginAttemptException extends \Exception FILE: app/Exceptions/LoginAttemptInvalidUserException.php class LoginAttemptInvalidUserException (line 5) | class LoginAttemptInvalidUserException extends LoginAttemptException FILE: app/Exceptions/MoveOperationException.php class MoveOperationException (line 7) | class MoveOperationException extends Exception FILE: app/Exceptions/NotFoundException.php class NotFoundException (line 5) | class NotFoundException extends PrettyException method __construct (line 10) | public function __construct($message = 'Item not found') FILE: app/Exceptions/NotifyException.php class NotifyException (line 9) | class NotifyException extends Exception implements Responsable, HttpExce... method __construct (line 15) | public function __construct(string $message, string $redirectLocation ... method getStatusCode (line 27) | public function getStatusCode(): int method getHeaders (line 35) | public function getHeaders(): array method toResponse (line 45) | public function toResponse($request) FILE: app/Exceptions/PdfExportException.php class PdfExportException (line 5) | class PdfExportException extends \Exception FILE: app/Exceptions/PermissionsException.php class PermissionsException (line 7) | class PermissionsException extends Exception FILE: app/Exceptions/PrettyException.php class PrettyException (line 9) | class PrettyException extends Exception implements Responsable, HttpExce... method toResponse (line 19) | public function toResponse($request) method setSubtitle (line 30) | public function setSubtitle(string $subtitle): self method setDetails (line 37) | public function setDetails(string $details): self method getStatusCode (line 47) | public function getStatusCode(): int method getHeaders (line 55) | public function getHeaders(): array FILE: app/Exceptions/SamlException.php class SamlException (line 5) | class SamlException extends NotifyException FILE: app/Exceptions/SocialDriverNotConfigured.php class SocialDriverNotConfigured (line 5) | class SocialDriverNotConfigured extends PrettyException FILE: app/Exceptions/SocialSignInAccountNotUsed.php class SocialSignInAccountNotUsed (line 5) | class SocialSignInAccountNotUsed extends SocialSignInException FILE: app/Exceptions/SocialSignInException.php class SocialSignInException (line 5) | class SocialSignInException extends NotifyException FILE: app/Exceptions/StoppedAuthenticationException.php class StoppedAuthenticationException (line 10) | class StoppedAuthenticationException extends \Exception implements Respo... method __construct (line 12) | public function __construct( method toResponse (line 22) | public function toResponse($request) method awaitingEmailConfirmationResponse (line 41) | protected function awaitingEmailConfirmationResponse(Request $request) FILE: app/Exceptions/ThemeException.php class ThemeException (line 5) | class ThemeException extends \Exception FILE: app/Exceptions/UserRegistrationException.php class UserRegistrationException (line 5) | class UserRegistrationException extends NotifyException FILE: app/Exceptions/UserTokenExpiredException.php class UserTokenExpiredException (line 5) | class UserTokenExpiredException extends \Exception method __construct (line 15) | public function __construct(string $message, int $userId) FILE: app/Exceptions/UserTokenNotFoundException.php class UserTokenNotFoundException (line 5) | class UserTokenNotFoundException extends \Exception FILE: app/Exceptions/UserUpdateException.php class UserUpdateException (line 5) | class UserUpdateException extends NotifyException FILE: app/Exceptions/ZipExportException.php class ZipExportException (line 5) | class ZipExportException extends \Exception FILE: app/Exceptions/ZipImportException.php class ZipImportException (line 5) | class ZipImportException extends \Exception method __construct (line 7) | public function __construct( FILE: app/Exceptions/ZipValidationException.php class ZipValidationException (line 5) | class ZipValidationException extends \Exception method __construct (line 7) | public function __construct( FILE: app/Exports/Controllers/BookExportApiController.php class BookExportApiController (line 12) | class BookExportApiController extends ApiController method __construct (line 14) | public function __construct( method exportPdf (line 26) | public function exportPdf(int $id) method exportHtml (line 39) | public function exportHtml(int $id) method exportPlainText (line 50) | public function exportPlainText(int $id) method exportMarkdown (line 61) | public function exportMarkdown(int $id) method exportZip (line 72) | public function exportZip(int $id, ZipExportBuilder $builder) FILE: app/Exports/Controllers/BookExportController.php class BookExportController (line 13) | class BookExportController extends Controller method __construct (line 15) | public function __construct( method pdf (line 28) | public function pdf(string $bookSlug) method html (line 41) | public function html(string $bookSlug) method plainText (line 52) | public function plainText(string $bookSlug) method markdown (line 63) | public function markdown(string $bookSlug) method zip (line 75) | public function zip(string $bookSlug, ZipExportBuilder $builder) FILE: app/Exports/Controllers/ChapterExportApiController.php class ChapterExportApiController (line 12) | class ChapterExportApiController extends ApiController method __construct (line 14) | public function __construct( method exportPdf (line 26) | public function exportPdf(int $id) method exportHtml (line 39) | public function exportHtml(int $id) method exportPlainText (line 50) | public function exportPlainText(int $id) method exportMarkdown (line 61) | public function exportMarkdown(int $id) method exportZip (line 72) | public function exportZip(int $id, ZipExportBuilder $builder) FILE: app/Exports/Controllers/ChapterExportController.php class ChapterExportController (line 13) | class ChapterExportController extends Controller method __construct (line 15) | public function __construct( method pdf (line 29) | public function pdf(string $bookSlug, string $chapterSlug) method html (line 43) | public function html(string $bookSlug, string $chapterSlug) method plainText (line 56) | public function plainText(string $bookSlug, string $chapterSlug) method markdown (line 69) | public function markdown(string $bookSlug, string $chapterSlug) method zip (line 81) | public function zip(string $bookSlug, string $chapterSlug, ZipExportBu... FILE: app/Exports/Controllers/ImportApiController.php class ImportApiController (line 17) | class ImportApiController extends ApiController method __construct (line 19) | public function __construct( method list (line 29) | public function list(): JsonResponse method create (line 48) | public function create(Request $request): JsonResponse method read (line 70) | public function read(int $id): JsonResponse method run (line 85) | public function run(int $id, Request $request): JsonResponse method delete (line 112) | public function delete(int $id): Response method rules (line 120) | protected function rules(): array method formatErrors (line 133) | protected function formatErrors(array $errors): string FILE: app/Exports/Controllers/ImportController.php class ImportController (line 15) | class ImportController extends Controller method __construct (line 17) | public function __construct( method start (line 27) | public function start() method upload (line 42) | public function upload(Request $request) method show (line 62) | public function show(int $id) method run (line 77) | public function run(int $id, Request $request) method delete (line 104) | public function delete(int $id) FILE: app/Exports/Controllers/PageExportApiController.php class PageExportApiController (line 12) | class PageExportApiController extends ApiController method __construct (line 14) | public function __construct( method exportPdf (line 26) | public function exportPdf(int $id) method exportHtml (line 39) | public function exportHtml(int $id) method exportPlainText (line 50) | public function exportPlainText(int $id) method exportMarkdown (line 61) | public function exportMarkdown(int $id) method exportZip (line 72) | public function exportZip(int $id, ZipExportBuilder $builder) FILE: app/Exports/Controllers/PageExportController.php class PageExportController (line 14) | class PageExportController extends Controller method __construct (line 16) | public function __construct( method pdf (line 31) | public function pdf(string $bookSlug, string $pageSlug) method html (line 46) | public function html(string $bookSlug, string $pageSlug) method plainText (line 60) | public function plainText(string $bookSlug, string $pageSlug) method markdown (line 73) | public function markdown(string $bookSlug, string $pageSlug) method zip (line 85) | public function zip(string $bookSlug, string $pageSlug, ZipExportBuild... FILE: app/Exports/ExportFormatter.php class ExportFormatter (line 18) | class ExportFormatter method __construct (line 20) | public function __construct( method pageToContainedHtml (line 33) | public function pageToContainedHtml(Page $page): string method chapterToContainedHtml (line 51) | public function chapterToContainedHtml(Chapter $chapter): string method bookToContainedHtml (line 73) | public function bookToContainedHtml(Book $book): string method pageToPdf (line 92) | public function pageToPdf(Page $page): string method chapterToPdf (line 110) | public function chapterToPdf(Chapter $chapter): string method bookToPdf (line 133) | public function bookToPdf(Book $book): string method htmlToPdf (line 152) | protected function htmlToPdf(string $html): string method openDetailElements (line 168) | protected function openDetailElements(HtmlDocument $doc): void method replaceIframesWithLinks (line 181) | protected function replaceIframesWithLinks(HtmlDocument $doc): void method containHtml (line 205) | protected function containHtml(string $htmlContent): string method pageToPlainText (line 247) | public function pageToPlainText(Page $page, bool $pageRendered = false... method chapterToPlainText (line 268) | public function chapterToPlainText(Chapter $chapter): string method bookToPlainText (line 284) | public function bookToPlainText(Book $book): string method pageToMarkdown (line 305) | public function pageToMarkdown(Page $page): string method chapterToMarkdown (line 317) | public function chapterToMarkdown(Chapter $chapter): string method bookToMarkdown (line 336) | public function bookToMarkdown(Book $book): string FILE: app/Exports/Import.php class Import (line 27) | class Import extends Model implements Loggable method getSizeString (line 33) | public function getSizeString(): string method getUrl (line 42) | public function getUrl(string $path = ''): string method logDescriptor (line 48) | public function logDescriptor(): string method createdBy (line 53) | public function createdBy(): BelongsTo method decodeMetadata (line 58) | public function decodeMetadata(): ZipExportBook|ZipExportChapter|ZipEx... FILE: app/Exports/ImportRepo.php class ImportRepo (line 26) | class ImportRepo method __construct (line 28) | public function __construct( method getVisibleImports (line 38) | public function getVisibleImports(): Collection method queryVisible (line 46) | public function queryVisible(): Builder method findVisible (line 57) | public function findVisible(int $id): Import method storeFromUpload (line 73) | public function storeFromUpload(UploadedFile $file): Import method runImport (line 117) | public function runImport(Import $import, ?string $parent = null): Entity method deleteImport (line 140) | public function deleteImport(Import $import): void FILE: app/Exports/PdfGenerator.php class PdfGenerator (line 11) | class PdfGenerator method fromHtml (line 21) | public function fromHtml(string $html): string method getActiveEngine (line 34) | public function getActiveEngine(): string method getWkhtmlBinaryPath (line 47) | protected function getWkhtmlBinaryPath(): string method renderUsingDomPdf (line 57) | protected function renderUsingDomPdf(string $html): string method renderUsingCommand (line 72) | protected function renderUsingCommand(string $html): string method renderUsingWkhtml (line 125) | protected function renderUsingWkhtml(string $html): string method convertEntities (line 137) | protected function convertEntities(string $subject): string FILE: app/Exports/ZipExports/Models/ZipExportAttachment.php class ZipExportAttachment (line 9) | final class ZipExportAttachment extends ZipExportModel method metadataOnly (line 16) | public function metadataOnly(): void method fromModel (line 21) | public static function fromModel(Attachment $model, ZipExportFiles $fi... method fromModelArray (line 36) | public static function fromModelArray(array $attachmentArray, ZipExpor... method validate (line 43) | public static function validate(ZipValidationHelper $context, array $d... method fromArray (line 55) | public static function fromArray(array $data): static FILE: app/Exports/ZipExports/Models/ZipExportBook.php class ZipExportBook (line 11) | final class ZipExportBook extends ZipExportModel method metadataOnly (line 24) | public function metadataOnly(): void method children (line 39) | public function children(): array method fromModel (line 53) | public static function fromModel(Book $model, ZipExportFiles $files): ... method validate (line 84) | public static function validate(ZipValidationHelper $context, array $d... method fromArray (line 104) | public static function fromArray(array $data): static FILE: app/Exports/ZipExports/Models/ZipExportChapter.php class ZipExportChapter (line 10) | final class ZipExportChapter extends ZipExportModel method metadataOnly (line 21) | public function metadataOnly(): void method children (line 33) | public function children(): array method fromModel (line 38) | public static function fromModel(Chapter $model, ZipExportFiles $files... method fromModelArray (line 57) | public static function fromModelArray(array $chapterArray, ZipExportFi... method validate (line 64) | public static function validate(ZipValidationHelper $context, array $d... method fromArray (line 82) | public static function fromArray(array $data): static FILE: app/Exports/ZipExports/Models/ZipExportImage.php class ZipExportImage (line 10) | final class ZipExportImage extends ZipExportModel method fromModel (line 17) | public static function fromModel(Image $model, ZipExportFiles $files):... method metadataOnly (line 28) | public function metadataOnly(): void method validate (line 33) | public static function validate(ZipValidationHelper $context, array $d... method fromArray (line 46) | public static function fromArray(array $data): static FILE: app/Exports/ZipExports/Models/ZipExportModel.php class ZipExportModel (line 8) | abstract class ZipExportModel implements JsonSerializable method jsonSerialize (line 16) | public function jsonSerialize(): array method validate (line 28) | abstract public static function validate(ZipValidationHelper $context,... method fromArray (line 33) | abstract public static function fromArray(array $data): static; method fromManyArray (line 40) | public static function fromManyArray(array $data): array method metadataOnly (line 56) | abstract public function metadataOnly(): void; FILE: app/Exports/ZipExports/Models/ZipExportPage.php class ZipExportPage (line 10) | final class ZipExportPage extends ZipExportModel method metadataOnly (line 24) | public function metadataOnly(): void method fromModel (line 39) | public static function fromModel(Page $model, ZipExportFiles $files): ... method fromModelArray (line 61) | public static function fromModelArray(array $pageArray, ZipExportFiles... method validate (line 68) | public static function validate(ZipValidationHelper $context, array $d... method fromArray (line 89) | public static function fromArray(array $data): static FILE: app/Exports/ZipExports/Models/ZipExportTag.php class ZipExportTag (line 8) | final class ZipExportTag extends ZipExportModel method metadataOnly (line 13) | public function metadataOnly(): void method fromModel (line 18) | public static function fromModel(Tag $model): self method fromModelArray (line 27) | public static function fromModelArray(array $tagArray): array method validate (line 32) | public static function validate(ZipValidationHelper $context, array $d... method fromArray (line 42) | public static function fromArray(array $data): static FILE: app/Exports/ZipExports/ZipExportBuilder.php class ZipExportBuilder (line 15) | class ZipExportBuilder method __construct (line 19) | public function __construct( method buildForPage (line 28) | public function buildForPage(Page $page): string method buildForChapter (line 41) | public function buildForChapter(Chapter $chapter): string method buildForBook (line 54) | public function buildForBook(Book $book): string method build (line 67) | protected function build(): string FILE: app/Exports/ZipExports/ZipExportFiles.php class ZipExportFiles (line 11) | class ZipExportFiles method __construct (line 25) | public function __construct( method referenceForAttachment (line 36) | public function referenceForAttachment(Attachment $attachment): string method referenceForImage (line 57) | public function referenceForImage(Image $image): string method getAllFileNames (line 74) | protected function getAllFileNames(): array method extractEach (line 87) | public function extractEach(callable $callback): void FILE: app/Exports/ZipExports/ZipExportReader.php class ZipExportReader (line 12) | class ZipExportReader method __construct (line 17) | public function __construct( method open (line 26) | protected function open(): void method close (line 46) | public function close(): void method readData (line 57) | public function readData(): array method fileExists (line 81) | public function fileExists(string $fileName): bool method fileWithinSizeLimit (line 86) | public function fileWithinSizeLimit(string $fileName): bool method streamFile (line 100) | public function streamFile(string $fileName) method sniffFileMime (line 108) | public function sniffFileMime(string $fileName): string method decodeDataToExportModel (line 119) | public function decodeDataToExportModel(): ZipExportBook|ZipExportChap... FILE: app/Exports/ZipExports/ZipExportReferences.php class ZipExportReferences (line 20) | class ZipExportReferences method __construct (line 35) | public function __construct( method addPage (line 41) | public function addPage(ZipExportPage $page): void method addChapter (line 54) | public function addChapter(ZipExportChapter $chapter): void method addBook (line 65) | public function addBook(ZipExportBook $book): void method buildReferences (line 80) | public function buildReferences(ZipExportFiles $files): void method handleModelReference (line 114) | protected function handleModelReference(Model $model, ZipExportModel $... FILE: app/Exports/ZipExports/ZipExportValidator.php class ZipExportValidator (line 10) | class ZipExportValidator method __construct (line 12) | public function __construct( method validate (line 17) | public function validate(): array method flattenModelErrors (line 43) | protected function flattenModelErrors(array $errors, string $keyPrefix... FILE: app/Exports/ZipExports/ZipFileReferenceRule.php class ZipFileReferenceRule (line 8) | class ZipFileReferenceRule implements ValidationRule method __construct (line 10) | public function __construct( method validate (line 19) | public function validate(string $attribute, mixed $value, Closure $fai... FILE: app/Exports/ZipExports/ZipImportReferences.php class ZipImportReferences (line 19) | class ZipImportReferences method __construct (line 45) | public function __construct( method addReference (line 53) | protected function addReference(string $type, Model $model, ?int $impo... method addPage (line 61) | public function addPage(Page $page, ZipExportPage $exportPage): void method addChapter (line 68) | public function addChapter(Chapter $chapter, ZipExportChapter $exportC... method addBook (line 75) | public function addBook(Book $book, ZipExportBook $exportBook): void method addAttachment (line 82) | public function addAttachment(Attachment $attachment, ?int $importId):... method addImage (line 88) | public function addImage(Image $image, ?int $importId): void method handleReference (line 94) | protected function handleReference(string $type, int $id): ?string method replaceDrawingIdReferences (line 114) | protected function replaceDrawingIdReferences(string $content): string method replaceReferences (line 130) | public function replaceReferences(): void method images (line 170) | public function images(): array method attachments (line 178) | public function attachments(): array FILE: app/Exports/ZipExports/ZipImportRunner.php class ZipImportRunner (line 29) | class ZipImportRunner method __construct (line 33) | public function __construct( method run (line 51) | public function run(Import $import, ?Entity $parent = null): Entity method revertStoredFiles (line 105) | public function revertStoredFiles(): void method cleanup (line 120) | protected function cleanup(): void method importBook (line 129) | protected function importBook(ZipExportBook $exportBook, ZipExportRead... method importChapter (line 164) | protected function importChapter(ZipExportChapter $exportChapter, Book... method importPage (line 186) | protected function importPage(ZipExportPage $exportPage, Book|Chapter ... method importAttachment (line 210) | protected function importAttachment(ZipExportAttachment $exportAttachm... method importImage (line 230) | protected function importImage(ZipExportImage $exportImage, Page $page... method exportTagsToInputArray (line 254) | protected function exportTagsToInputArray(array $exportTags): array method zipFileToUploadedFile (line 266) | protected function zipFileToUploadedFile(string $fileName, ZipExportRe... method ensurePermissionsPermitImport (line 288) | protected function ensurePermissionsPermitImport(ZipExportPage|ZipExpo... method getZipPath (line 355) | protected function getZipPath(Import $import): string FILE: app/Exports/ZipExports/ZipReferenceParser.php class ZipReferenceParser (line 16) | class ZipReferenceParser method __construct (line 23) | public function __construct( method parseLinks (line 35) | public function parseLinks(string $content, callable $handler): string method parseReferences (line 65) | public function parseReferences(string $content, callable $handler): s... method linkToModel (line 92) | protected function linkToModel(string $link): ?Model method getModelResolvers (line 104) | protected function getModelResolvers(): array method getLinkRegex (line 125) | protected function getLinkRegex(): string FILE: app/Exports/ZipExports/ZipUniqueIdRule.php class ZipUniqueIdRule (line 8) | class ZipUniqueIdRule implements ValidationRule method __construct (line 10) | public function __construct( method validate (line 20) | public function validate(string $attribute, mixed $value, Closure $fai... FILE: app/Exports/ZipExports/ZipValidationHelper.php class ZipValidationHelper (line 8) | class ZipValidationHelper method __construct (line 19) | public function __construct( method validateData (line 25) | public function validateData(array $data, array $rules): array method fileReferenceRule (line 36) | public function fileReferenceRule(array $acceptedMimes = []): ZipFileR... method uniqueIdRule (line 41) | public function uniqueIdRule(string $type): ZipUniqueIdRule method hasIdBeenUsed (line 46) | public function hasIdBeenUsed(string $type, mixed $id): bool method validateRelations (line 63) | public function validateRelations(array $relations, string $model): array FILE: app/Facades/Activity.php class Activity (line 10) | class Activity extends Facade method getFacadeAccessor (line 17) | protected static function getFacadeAccessor() FILE: app/Facades/Theme.php class Theme (line 8) | class Theme extends Facade method getFacadeAccessor (line 15) | protected static function getFacadeAccessor() FILE: app/Http/ApiController.php class ApiController (line 9) | abstract class ApiController extends Controller method apiListingResponse (line 23) | protected function apiListingResponse(Builder $query, array $fields, a... method getValidationRules (line 38) | public function getValidationRules(): array method rules (line 47) | protected function rules(): array FILE: app/Http/Controller.php class Controller (line 17) | abstract class Controller extends BaseController method isSignedIn (line 25) | protected function isSignedIn(): bool method preventAccessInDemoMode (line 33) | protected function preventAccessInDemoMode(): void method setPageTitle (line 43) | public function setPageTitle(string $title): void method showPermissionError (line 53) | protected function showPermissionError(string $redirectLocation = '/')... method checkPermission (line 63) | protected function checkPermission(string|Permission $permission): void method preventGuestAccess (line 73) | protected function preventGuestAccess(): void method checkOwnablePermission (line 83) | protected function checkOwnablePermission(string|Permission $permissio... method checkPermissionOr (line 94) | protected function checkPermissionOr(string|Permission $permission, ca... method checkPermissionOrCurrentUser (line 105) | protected function checkPermissionOrCurrentUser(string|Permission $per... method jsonError (line 115) | protected function jsonError(string $messageText = '', int $statusCode... method download (line 123) | protected function download(): DownloadResponseFactory method showSuccessNotification (line 131) | protected function showSuccessNotification(string $message): void method showWarningNotification (line 139) | protected function showWarningNotification(string $message): void method showErrorNotification (line 147) | protected function showErrorNotification(string $message): void method logActivity (line 155) | protected function logActivity(string $type, string|Loggable $detail =... method getImageValidationRules (line 163) | protected function getImageValidationRules(): array method redirectToRequest (line 172) | protected function redirectToRequest(Request $request): RedirectResponse FILE: app/Http/DownloadResponseFactory.php class DownloadResponseFactory (line 9) | class DownloadResponseFactory method __construct (line 11) | public function __construct( method directly (line 19) | public function directly(string $content, string $fileName): Response method streamedDirectly (line 27) | public function streamedDirectly($stream, string $fileName, int $fileS... method streamedFileDirectly (line 42) | public function streamedFileDirectly(string $filePath, string $fileNam... method streamedInline (line 70) | public function streamedInline($stream, string $fileName, int $fileSiz... method streamedFileInline (line 87) | public function streamedFileInline(string $filePath, ?string $fileName... method getHeaders (line 102) | protected function getHeaders(string $fileName, int $fileSize, string ... FILE: app/Http/HttpClientHistory.php class HttpClientHistory (line 7) | class HttpClientHistory method __construct (line 9) | public function __construct( method requestCount (line 14) | public function requestCount(): int method requestAt (line 19) | public function requestAt(int $index): ?GuzzleRequest method latestRequest (line 24) | public function latestRequest(): ?GuzzleRequest method all (line 29) | public function all(): array FILE: app/Http/HttpRequestService.php class HttpRequestService (line 13) | class HttpRequestService method buildClient (line 20) | public function buildClient(int $timeout, array $options = []): Client... method jsonRequest (line 33) | public function jsonRequest(string $method, string $uri, array $data):... method mockClient (line 44) | public function mockClient(array $responses = [], bool $pad = true): H... method clearMocking (line 66) | public function clearMocking(): void FILE: app/Http/Kernel.php class Kernel (line 7) | class Kernel extends HttpKernel FILE: app/Http/Middleware/ApiAuthenticate.php class ApiAuthenticate (line 10) | class ApiAuthenticate method handle (line 17) | public function handle(Request $request, Closure $next) method ensureAuthorizedBySessionOrToken (line 31) | protected function ensureAuthorizedBySessionOrToken(Request $request):... method sessionUserHasApiAccess (line 59) | protected function sessionUserHasApiAccess(): bool FILE: app/Http/Middleware/ApplyCspRules.php class ApplyCspRules (line 9) | class ApplyCspRules method __construct (line 13) | public function __construct(CspService $cspService) method handle (line 26) | public function handle($request, Closure $next) FILE: app/Http/Middleware/Authenticate.php class Authenticate (line 8) | class Authenticate method handle (line 13) | public function handle(Request $request, Closure $next) FILE: app/Http/Middleware/AuthenticatedOrPendingMfa.php class AuthenticatedOrPendingMfa (line 9) | class AuthenticatedOrPendingMfa method __construct (line 14) | public function __construct(LoginService $loginService, MfaSession $mf... method handle (line 28) | public function handle($request, Closure $next) FILE: app/Http/Middleware/CheckEmailConfirmed.php class CheckEmailConfirmed (line 20) | class CheckEmailConfirmed method __construct (line 24) | public function __construct(EmailConfirmationService $confirmationServ... method handle (line 37) | public function handle($request, Closure $next) FILE: app/Http/Middleware/CheckGuard.php class CheckGuard (line 7) | class CheckGuard method handle (line 18) | public function handle($request, Closure $next, ...$allowedGuards) FILE: app/Http/Middleware/CheckUserHasPermission.php class CheckUserHasPermission (line 9) | class CheckUserHasPermission method handle (line 16) | public function handle(Request $request, Closure $next, string|Permiss... method errorResponse (line 25) | protected function errorResponse(Request $request) FILE: app/Http/Middleware/EncryptCookies.php class EncryptCookies (line 7) | class EncryptCookies extends Middleware FILE: app/Http/Middleware/Localization.php class Localization (line 8) | class Localization method __construct (line 10) | public function __construct( method handle (line 23) | public function handle($request, Closure $next) FILE: app/Http/Middleware/PreventRequestsDuringMaintenance.php class PreventRequestsDuringMaintenance (line 7) | class PreventRequestsDuringMaintenance extends Middleware FILE: app/Http/Middleware/PreventResponseCaching.php class PreventResponseCaching (line 8) | class PreventResponseCaching method handle (line 25) | public function handle($request, Closure $next) FILE: app/Http/Middleware/RedirectIfAuthenticated.php class RedirectIfAuthenticated (line 11) | class RedirectIfAuthenticated method handle (line 18) | public function handle(Request $request, Closure $next, string ...$gua... FILE: app/Http/Middleware/RunThemeActions.php class RunThemeActions (line 9) | class RunThemeActions method handle (line 19) | public function handle($request, Closure $next) FILE: app/Http/Middleware/StartSessionExtended.php class StartSessionExtended (line 14) | class StartSessionExtended extends Middleware method storeCurrentUrl (line 26) | protected function storeCurrentUrl(Request $request, $session): void FILE: app/Http/Middleware/StartSessionIfCookieExists.php class StartSessionIfCookieExists (line 8) | class StartSessionIfCookieExists extends Middleware method handle (line 13) | public function handle($request, Closure $next) FILE: app/Http/Middleware/ThrottleApiRequests.php class ThrottleApiRequests (line 7) | class ThrottleApiRequests extends Middleware method resolveMaxAttempts (line 12) | protected function resolveMaxAttempts($request, $maxAttempts): int FILE: app/Http/Middleware/TrimStrings.php class TrimStrings (line 7) | class TrimStrings extends Middleware FILE: app/Http/Middleware/TrustHosts.php class TrustHosts (line 7) | class TrustHosts extends Middleware method hosts (line 14) | public function hosts(): array FILE: app/Http/Middleware/TrustProxies.php class TrustProxies (line 9) | class TrustProxies extends Middleware method handle (line 33) | public function handle(Request $request, Closure $next) FILE: app/Http/Middleware/VerifyCsrfToken.php class VerifyCsrfToken (line 7) | class VerifyCsrfToken extends Middleware FILE: app/Http/RangeSupportedStream.php class RangeSupportedStream (line 14) | class RangeSupportedStream method __construct (line 23) | public function __construct( method sniffMime (line 35) | public function sniffMime(string $extension = ''): string method outputAndClose (line 46) | public function outputAndClose(): void method getResponseHeaders (line 75) | public function getResponseHeaders(): array method getResponseStatus (line 80) | public function getResponseStatus(): int method parseRequest (line 85) | protected function parseRequest(Request $request): void method getRangeFromRequest (line 109) | protected function getRangeFromRequest(Request $request): ?array FILE: app/Http/Request.php class Request (line 7) | class Request extends LaravelRequest method getSchemeAndHttpHost (line 13) | public function getSchemeAndHttpHost(): string method getBaseUrl (line 29) | public function getBaseUrl(): string FILE: app/Permissions/ContentPermissionApiController.php class ContentPermissionApiController (line 11) | class ContentPermissionApiController extends ApiController method __construct (line 13) | public function __construct( method read (line 49) | public function read(string $contentType, string $contentId) method update (line 69) | public function update(Request $request, string $contentType, string $... method formattedPermissionDataForEntity (line 82) | protected function formattedPermissionDataForEntity(Entity $entity): a... FILE: app/Permissions/EntityPermissionEvaluator.php class EntityPermissionEvaluator (line 10) | class EntityPermissionEvaluator method __construct (line 12) | public function __construct( method evaluateEntityForUser (line 17) | public function evaluateEntityForUser(Entity $entity, array $userRoleI... method evaluatePermitsByType (line 35) | protected function evaluatePermitsByType(array $permitsByType): ?int method collapseAndCategorisePermissions (line 55) | protected function collapseAndCategorisePermissions(array $typeIdChain... method getPermissionsMapByTypeId (line 81) | protected function getPermissionsMapByTypeId(array $typeIdChain, array... method getPermissionsForEntityIdsOfType (line 121) | protected function getPermissionsForEntityIdsOfType(string $type, arra... method gatherEntityChainTypeIds (line 139) | protected function gatherEntityChainTypeIds(SimpleEntityData $entity):... method isUserSystemAdmin (line 157) | protected function isUserSystemAdmin($userRoleIds): bool FILE: app/Permissions/JointPermissionBuilder.php class JointPermissionBuilder (line 21) | class JointPermissionBuilder method __construct (line 23) | public function __construct( method rebuildForAll (line 32) | public function rebuildForAll(): void method rebuildForEntity (line 54) | public function rebuildForEntity(Entity $entity): void method rebuildForRole (line 85) | public function rebuildForRole(Role $role) method bookFetchQuery (line 106) | protected function bookFetchQuery(): Builder method buildJointPermissionsForBooks (line 122) | protected function buildJointPermissionsForBooks(EloquentCollection $b... method buildJointPermissionsForEntities (line 146) | protected function buildJointPermissionsForEntities(array $entities): ... method deleteManyJointPermissionsForEntities (line 158) | protected function deleteManyJointPermissionsForEntities(array $entiti... method entitiesToSimpleEntities (line 178) | protected function entitiesToSimpleEntities(array $entities): array method createManyJointPermissions (line 196) | protected function createManyJointPermissions(array $originalEntities,... method entitiesToTypeIdMap (line 239) | protected function entitiesToTypeIdMap(array $entities): array method createJointPermissionData (line 258) | protected function createJointPermissionData(SimpleEntityData $entity,... method createJointPermissionDataArray (line 283) | protected function createJointPermissionDataArray(SimpleEntityData $en... FILE: app/Permissions/MassEntityPermissionEvaluator.php class MassEntityPermissionEvaluator (line 7) | class MassEntityPermissionEvaluator extends EntityPermissionEvaluator method __construct (line 15) | public function __construct(array $entitiesInvolved, string $action) method evaluateEntityForRole (line 21) | public function evaluateEntityForRole(SimpleEntityData $entity, int $r... method getPermissionMapByTypeIdForChainAndRole (line 34) | protected function getPermissionMapByTypeIdForChainAndRole(array $type... method getPermissionMapByTypeIdAndRoleForAllInvolved (line 54) | protected function getPermissionMapByTypeIdAndRoleForAllInvolved(): array FILE: app/Permissions/Models/EntityPermission.php class EntityPermission (line 19) | class EntityPermission extends Model method role (line 35) | public function role(): BelongsTo FILE: app/Permissions/Models/JointPermission.php class JointPermission (line 11) | class JointPermission extends Model method role (line 19) | public function role(): BelongsTo method entity (line 27) | public function entity(): MorphOne FILE: app/Permissions/Models/RolePermission.php class RolePermission (line 13) | class RolePermission extends Model method roles (line 18) | public function roles(): BelongsToMany method getByName (line 26) | public static function getByName(string $name): ?RolePermission FILE: app/Permissions/Permission.php method genericForEntity (line 124) | public static function genericForEntity(): array method middleware (line 138) | public function middleware(): string FILE: app/Permissions/PermissionApplicator.php class PermissionApplicator (line 17) | class PermissionApplicator method __construct (line 19) | public function __construct( method checkOwnableUserAccess (line 27) | public function checkOwnableUserAccess(Model&OwnableInterface $ownable... method hasEntityPermission (line 64) | protected function hasEntityPermission(Entity $entity, array $userRole... method checkUserHasEntityPermissionOnAny (line 75) | public function checkUserHasEntityPermissionOnAny(string|Permission $a... method restrictEntityQuery (line 99) | public function restrictEntityQuery(Builder $query): Builder method restrictDraftsOnPageQuery (line 117) | public function restrictDraftsOnPageQuery(Builder $query): Builder method restrictEntityRelationQuery (line 133) | public function restrictEntityRelationQuery(Builder $query, string $ta... method filterDeletedFromEntityRelationQuery (line 155) | public function filterDeletedFromEntityRelationQuery(Builder $query, s... method restrictPageRelationQuery (line 192) | public function restrictPageRelationQuery(Builder $query, string $tabl... method currentUser (line 214) | protected function currentUser(): User method getCurrentUserRoleIds (line 224) | protected function getCurrentUserRoleIds(): array method ensureValidEntityAction (line 234) | protected function ensureValidEntityAction(string $action): void FILE: app/Permissions/PermissionFormData.php class PermissionFormData (line 9) | class PermissionFormData method __construct (line 13) | public function __construct(Entity $entity) method permissionsWithRoles (line 21) | public function permissionsWithRoles(): array method rolesNotAssigned (line 35) | public function rolesNotAssigned(): array method everyoneElseEntityPermission (line 49) | public function everyoneElseEntityPermission(): EntityPermission method everyoneElseRole (line 61) | public function everyoneElseRole(): Role FILE: app/Permissions/PermissionStatus.php class PermissionStatus (line 5) | class PermissionStatus FILE: app/Permissions/PermissionsController.php class PermissionsController (line 13) | class PermissionsController extends Controller method __construct (line 15) | public function __construct( method showForPage (line 24) | public function showForPage(string $bookSlug, string $pageSlug) method updateForPage (line 39) | public function updateForPage(Request $request, string $bookSlug, stri... method showForChapter (line 56) | public function showForChapter(string $bookSlug, string $chapterSlug) method updateForChapter (line 71) | public function updateForChapter(Request $request, string $bookSlug, s... method showForBook (line 88) | public function showForBook(string $slug) method updateForBook (line 103) | public function updateForBook(Request $request, string $slug) method showForShelf (line 120) | public function showForShelf(string $slug) method updateForShelf (line 135) | public function updateForShelf(Request $request, string $slug) method copyShelfPermissionsToBooks (line 152) | public function copyShelfPermissionsToBooks(string $slug) method formRowForRole (line 169) | public function formRowForRole(string $entityType, string $roleId) FILE: app/Permissions/PermissionsRepo.php class PermissionsRepo (line 14) | class PermissionsRepo method __construct (line 18) | public function __construct( method getAllRoles (line 26) | public function getAllRoles(): Collection method getAllRolesExcept (line 34) | public function getAllRolesExcept(Role $role): Collection method getRoleById (line 42) | public function getRoleById(int $id): Role method saveNewRole (line 50) | public function saveNewRole(array $roleData): Role method updateRole (line 71) | public function updateRole($roleId, array $roleData): Role method assignRolePermissions (line 93) | protected function assignRolePermissions(Role $role, array $permission... method deleteRole (line 128) | public function deleteRole(int $roleId, int $migrateRoleId = 0): void FILE: app/Permissions/SimpleEntityData.php class SimpleEntityData (line 7) | class SimpleEntityData method fromEntity (line 15) | public static function fromEntity(Entity $entity): self FILE: app/References/CrossLinkParser.php class CrossLinkParser (line 15) | class CrossLinkParser method __construct (line 22) | public function __construct(array $modelResolvers) method extractLinkedModels (line 32) | public function extractLinkedModels(string $html): array method getLinksFromContent (line 53) | protected function getLinksFromContent(string $html): array method linkToModel (line 71) | protected function linkToModel(string $link): ?Model method createWithEntityResolvers (line 87) | public static function createWithEntityResolvers(): self FILE: app/References/ModelResolvers/AttachmentModelResolver.php class AttachmentModelResolver (line 7) | class AttachmentModelResolver implements CrossLinkModelResolver method resolve (line 9) | public function resolve(string $link): ?Attachment FILE: app/References/ModelResolvers/BookLinkModelResolver.php class BookLinkModelResolver (line 9) | class BookLinkModelResolver implements CrossLinkModelResolver method __construct (line 11) | public function __construct( method resolve (line 16) | public function resolve(string $link): ?Model FILE: app/References/ModelResolvers/BookshelfLinkModelResolver.php class BookshelfLinkModelResolver (line 9) | class BookshelfLinkModelResolver implements CrossLinkModelResolver method __construct (line 11) | public function __construct( method resolve (line 15) | public function resolve(string $link): ?Model FILE: app/References/ModelResolvers/ChapterLinkModelResolver.php class ChapterLinkModelResolver (line 9) | class ChapterLinkModelResolver implements CrossLinkModelResolver method __construct (line 11) | public function __construct( method resolve (line 16) | public function resolve(string $link): ?Model FILE: app/References/ModelResolvers/CrossLinkModelResolver.php type CrossLinkModelResolver (line 7) | interface CrossLinkModelResolver method resolve (line 12) | public function resolve(string $link): ?Model; FILE: app/References/ModelResolvers/ImageModelResolver.php class ImageModelResolver (line 8) | class ImageModelResolver implements CrossLinkModelResolver method resolve (line 12) | public function resolve(string $link): ?Image method getUrlPattern (line 41) | protected function getUrlPattern(): string FILE: app/References/ModelResolvers/PageLinkModelResolver.php class PageLinkModelResolver (line 9) | class PageLinkModelResolver implements CrossLinkModelResolver method __construct (line 11) | public function __construct( method resolve (line 16) | public function resolve(string $link): ?Model FILE: app/References/ModelResolvers/PagePermalinkModelResolver.php class PagePermalinkModelResolver (line 9) | class PagePermalinkModelResolver implements CrossLinkModelResolver method __construct (line 11) | public function __construct( method resolve (line 16) | public function resolve(string $link): ?Model FILE: app/References/Reference.php class Reference (line 16) | class Reference extends Model method from (line 20) | public function from(): MorphTo method to (line 25) | public function to(): MorphTo method jointPermissions (line 30) | public function jointPermissions(): HasMany FILE: app/References/ReferenceChangeContext.php class ReferenceChangeContext (line 7) | class ReferenceChangeContext method add (line 15) | public function add(Entity $oldEntity, Entity $newEntity): void method getNewEntities (line 23) | public function getNewEntities(): array method getOldEntities (line 31) | public function getOldEntities(): array method getNewForOld (line 36) | public function getNewForOld(Entity $oldEntity): ?Entity FILE: app/References/ReferenceController.php class ReferenceController (line 8) | class ReferenceController extends Controller method __construct (line 10) | public function __construct( method page (line 19) | public function page(string $bookSlug, string $pageSlug) method chapter (line 33) | public function chapter(string $bookSlug, string $chapterSlug) method book (line 47) | public function book(string $slug) method shelf (line 61) | public function shelf(string $slug) FILE: app/References/ReferenceFetcher.php class ReferenceFetcher (line 11) | class ReferenceFetcher method __construct (line 13) | public function __construct( method getReferencesToEntity (line 23) | public function getReferencesToEntity(Entity $entity, bool $withConten... method getReferenceCountToEntity (line 35) | public function getReferenceCountToEntity(Entity $entity): int method queryReferencesToEntity (line 40) | protected function queryReferencesToEntity(Entity $entity): Builder FILE: app/References/ReferenceStore.php class ReferenceStore (line 9) | class ReferenceStore method __construct (line 11) | public function __construct( method updateForEntity (line 19) | public function updateForEntity(Entity $entity): void method updateForAll (line 27) | public function updateForAll(): void method updateForEntities (line 43) | protected function updateForEntities(array $entities): void method dropReferencesFromEntities (line 76) | protected function dropReferencesFromEntities(array $entities): void FILE: app/References/ReferenceUpdater.php class ReferenceUpdater (line 12) | class ReferenceUpdater method __construct (line 14) | public function __construct( method updateEntityReferences (line 20) | public function updateEntityReferences(Entity $entity, string $oldLink... method changeReferencesUsingContext (line 35) | public function changeReferencesUsingContext(ReferenceChangeContext $c... method getReferencesToUpdate (line 76) | protected function getReferencesToUpdate(Entity $entity): array method updateReferencesWithinEntity (line 101) | protected function updateReferencesWithinEntity(Entity $entity, string... method updateReferencesWithinDescription (line 112) | protected function updateReferencesWithinDescription(Entity&HasDescrip... method updateReferencesWithinPage (line 120) | protected function updateReferencesWithinPage(Page $page, string $oldL... method updateLinksInMarkdown (line 135) | protected function updateLinksInMarkdown(string $markdown, string $old... method updateLinksInHtml (line 150) | protected function updateLinksInHtml(string $html, string $oldLink, st... FILE: app/Search/Options/ExactSearchOption.php class ExactSearchOption (line 5) | class ExactSearchOption extends SearchOption method toString (line 7) | public function toString(): string FILE: app/Search/Options/FilterSearchOption.php class FilterSearchOption (line 5) | class FilterSearchOption extends SearchOption method __construct (line 9) | public function __construct( method toString (line 18) | public function toString(): string method getKey (line 25) | public function getKey(): string method fromContentString (line 30) | public static function fromContentString(string $value, bool $negated ... FILE: app/Search/Options/SearchOption.php class SearchOption (line 5) | abstract class SearchOption method __construct (line 7) | public function __construct( method getKey (line 17) | public function getKey(): string|null method toString (line 25) | abstract public function toString(): string; FILE: app/Search/Options/TagSearchOption.php class TagSearchOption (line 5) | class TagSearchOption extends SearchOption method toString (line 14) | public function toString(): string method getParts (line 22) | public function getParts(): array FILE: app/Search/Options/TermSearchOption.php class TermSearchOption (line 5) | class TermSearchOption extends SearchOption method toString (line 7) | public function toString(): string FILE: app/Search/SearchApiController.php class SearchApiController (line 13) | class SearchApiController extends ApiController method __construct (line 23) | public function __construct( method all (line 39) | public function all(Request $request): JsonResponse FILE: app/Search/SearchController.php class SearchController (line 12) | class SearchController extends Controller method __construct (line 14) | public function __construct( method search (line 23) | public function search(Request $request, SearchResultsFormatter $forma... method searchBook (line 50) | public function searchBook(Request $request, int $bookId) method searchChapter (line 61) | public function searchChapter(Request $request, int $chapterId) method searchForSelector (line 73) | public function searchForSelector(Request $request, QueryPopular $quer... method templatesForSelector (line 94) | public function templatesForSelector(Request $request) method searchSuggestions (line 120) | public function searchSuggestions(Request $request) method searchSiblings (line 137) | public function searchSiblings(Request $request, SiblingFetcher $sibli... FILE: app/Search/SearchIndex.php class SearchIndex (line 14) | class SearchIndex method __construct (line 27) | public function __construct( method indexEntity (line 35) | public function indexEntity(Entity $entity): void method indexEntities (line 47) | public function indexEntities(array $entities): void method indexAllEntities (line 68) | public function indexAllEntities(?callable $progressCallback = null): ... method deleteEntityTerms (line 100) | public function deleteEntityTerms(Entity $entity): void method insertTerms (line 110) | protected function insertTerms(array $terms): void method generateTermScoreMapFromText (line 124) | protected function generateTermScoreMapFromText(string $text, float $s... method generateTermScoreMapFromHtml (line 141) | protected function generateTermScoreMapFromHtml(string $html): array method generateTermScoreMapFromTags (line 182) | protected function generateTermScoreMapFromTags(array $tags): array method textToTermCountMap (line 204) | protected function textToTermCountMap(string $text): array method entityToTermDataArray (line 248) | protected function entityToTermDataArray(Entity $entity): array method mergeTermScoreMaps (line 284) | protected function mergeTermScoreMaps(...$scoreMaps): array FILE: app/Search/SearchOptionSet.php class SearchOptionSet (line 10) | class SearchOptionSet method __construct (line 20) | public function __construct(array $options = []) method toValueArray (line 25) | public function toValueArray(): array method toValueMap (line 30) | public function toValueMap(): array method merge (line 40) | public function merge(SearchOptionSet $set): self method filterEmpty (line 45) | public function filterEmpty(): self method fromValueArray (line 54) | public static function fromValueArray(array $values, string $class): self method all (line 63) | public function all(): array method negated (line 71) | public function negated(): self method nonNegated (line 80) | public function nonNegated(): self method limit (line 89) | public function limit(int $limit): self FILE: app/Search/SearchOptions.php class SearchOptions (line 12) | class SearchOptions method __construct (line 23) | public function __construct() method fromString (line 34) | public static function fromString(string $search): self method fromRequest (line 47) | public static function fromRequest(Request $request): self method addOptionsFromString (line 99) | protected function addOptionsFromString(string $searchString): void method limitOptions (line 158) | protected function limitOptions(): void method decodeEscapes (line 175) | protected static function decodeEscapes(string $input): string method parseStandardTermString (line 203) | protected static function parseStandardTermString(string $termString):... method setFilter (line 227) | public function setFilter(string $filterName, string $filterValue = ''... method toString (line 237) | public function toString(): string method getAdditionalOptionsString (line 256) | public function getAdditionalOptionsString(): string FILE: app/Search/SearchResultsFormatter.php class SearchResultsFormatter (line 9) | class SearchResultsFormatter method format (line 17) | public function format(array $results, SearchOptions $options): void method setSearchPreview (line 28) | protected function setSearchPreview(Entity $entity, SearchOptions $opt... method highlightTagsContainingTerms (line 58) | protected function highlightTagsContainingTerms(array $tags, array $te... method getMatchPositions (line 85) | protected function getMatchPositions(string $text, array $terms): array method sortAndMergeMatchPositions (line 113) | protected function sortAndMergeMatchPositions(array $matchPositions): ... method formatTextUsingMatchPositions (line 143) | protected function formatTextUsingMatchPositions(array $matchPositions... FILE: app/Search/SearchRunner.php class SearchRunner (line 21) | class SearchRunner method __construct (line 28) | public function __construct( method searchEntities (line 42) | public function searchEntities(SearchOptions $searchOpts, string $enti... method searchBook (line 67) | public function searchBook(int $bookId, string $searchString): Collection method searchChapter (line 83) | public function searchChapter(int $chapterId, string $searchString): C... method getPageOfDataFromQuery (line 94) | protected function getPageOfDataFromQuery(EloquentBuilder $query, int ... method buildQuery (line 110) | protected function buildQuery(SearchOptions $searchOpts, array $entity... method applyTermSearch (line 149) | protected function applyTermSearch(EloquentBuilder $entityQuery, Searc... method selectForScoredTerms (line 190) | protected function selectForScoredTerms(array $scoredTerms): array method getTermAdjustments (line 216) | protected function getTermAdjustments(SearchOptions $options): array method rawTermCountsToAdjustments (line 254) | protected function rawTermCountsToAdjustments(array $termCounts): array method applyTagSearch (line 274) | protected function applyTagSearch(EloquentBuilder $query, TagSearchOpt... method applyNegatableWhere (line 305) | protected function applyNegatableWhere(EloquentBuilder $query, bool $n... method filterUpdatedAfter (line 317) | protected function filterUpdatedAfter(EloquentBuilder $query, string $... method filterUpdatedBefore (line 323) | protected function filterUpdatedBefore(EloquentBuilder $query, string ... method filterCreatedAfter (line 329) | protected function filterCreatedAfter(EloquentBuilder $query, string $... method filterCreatedBefore (line 335) | protected function filterCreatedBefore(EloquentBuilder $query, string ... method filterCreatedBy (line 341) | protected function filterCreatedBy(EloquentBuilder $query, string $inp... method filterUpdatedBy (line 350) | protected function filterUpdatedBy(EloquentBuilder $query, string $inp... method filterOwnedBy (line 359) | protected function filterOwnedBy(EloquentBuilder $query, string $input... method filterInName (line 368) | protected function filterInName(EloquentBuilder $query, string $input,... method filterInTitle (line 373) | protected function filterInTitle(EloquentBuilder $query, string $input... method filterInBody (line 378) | protected function filterInBody(EloquentBuilder $query, string $input,... method filterIsRestricted (line 386) | protected function filterIsRestricted(EloquentBuilder $query, string $... method filterViewedByMe (line 391) | protected function filterViewedByMe(EloquentBuilder $query, string $in... method filterNotViewedByMe (line 400) | protected function filterNotViewedByMe(EloquentBuilder $query, string ... method filterIsTemplate (line 409) | protected function filterIsTemplate(EloquentBuilder $query, string $in... method filterSortBy (line 414) | protected function filterSortBy(EloquentBuilder $query, string $input,... method sortByLastCommented (line 425) | protected function sortByLastCommented(EloquentBuilder $query, bool $n... FILE: app/Search/SearchTerm.php class SearchTerm (line 7) | class SearchTerm extends Model method entity (line 17) | public function entity() FILE: app/Search/SearchTextTokenizer.php class SearchTextTokenizer (line 11) | class SearchTextTokenizer method __construct (line 18) | public function __construct( method currentDelimiter (line 28) | public function currentDelimiter(): string method previousDelimiter (line 36) | public function previousDelimiter(): string method next (line 45) | public function next(): string|false FILE: app/Settings/AppSettingsStore.php class AppSettingsStore (line 9) | class AppSettingsStore method __construct (line 11) | public function __construct( method storeFromUpdateRequest (line 17) | public function storeFromUpdateRequest(Request $request, string $categ... method updateAppIcon (line 26) | protected function updateAppIcon(Request $request): void method updateAppLogo (line 59) | protected function updateAppLogo(Request $request): void method storeSimpleSettings (line 76) | protected function storeSimpleSettings(Request $request): void method destroyExistingSettingImage (line 88) | protected function destroyExistingSettingImage(string $settingKey): void FILE: app/Settings/MaintenanceController.php class MaintenanceController (line 14) | class MaintenanceController extends Controller method index (line 19) | public function index(TrashCan $trashCan) method cleanupImages (line 36) | public function cleanupImages(Request $request, ImageService $imageSer... method sendTestEmail (line 64) | public function sendTestEmail() method regenerateReferences (line 83) | public function regenerateReferences(ReferenceStore $referenceStore) FILE: app/Settings/Setting.php class Setting (line 7) | class Setting extends Model FILE: app/Settings/SettingController.php class SettingController (line 12) | class SettingController extends Controller method index (line 17) | public function index() method category (line 25) | public function category(string $category) method update (line 41) | public function update(Request $request, AppSettingsStore $store, stri... method ensureCategoryExists (line 57) | protected function ensureCategoryExists(string $category): void FILE: app/Settings/SettingService.php class SettingService (line 13) | class SettingService method get (line 21) | public function get(string $key, $default = null): mixed method getInteger (line 35) | public function getInteger(string $key, int $default, int $min = 0, in... method getFromSession (line 49) | protected function getFromSession(string $key, $default = false) method getUser (line 59) | public function getUser(User $user, string $key, $default = null) method getForCurrentUser (line 75) | public function getForCurrentUser(string $key, $default = null) method getValueFromStore (line 84) | protected function getValueFromStore(string $key): mixed method putValueIntoLocalCache (line 97) | protected function putValueIntoLocalCache(string $key, mixed $value): ... method localCacheCategory (line 111) | protected function localCacheCategory(string $key): string method loadToLocalCache (line 123) | protected function loadToLocalCache(string $cacheCategory): void method formatValue (line 152) | protected function formatValue(mixed $value, mixed $default): mixed method has (line 172) | public function has(string $key): bool method put (line 183) | public function put(string $key, mixed $value): bool method formatArrayValue (line 208) | protected function formatArrayValue(array $value): string method putUser (line 222) | public function putUser(User $user, string $key, string $value): bool method putForCurrentUser (line 238) | public function putForCurrentUser(string $key, string $value): bool method userKey (line 246) | protected function userKey(string $userId, string $key = ''): string method remove (line 254) | public function remove(string $key): void method deleteUserSettings (line 270) | public function deleteUserSettings(string $userId): void method getSettingObjectByKey (line 280) | protected function getSettingObjectByKey(string $key): ?Setting method flushCache (line 290) | public function flushCache(): void FILE: app/Settings/StatusController.php class StatusController (line 11) | class StatusController extends Controller method show (line 16) | public function show() method trueWithoutError (line 45) | protected function trueWithoutError(callable $test): bool FILE: app/Settings/TestEmailNotification.php class TestEmailNotification (line 9) | class TestEmailNotification extends MailNotification method toMail (line 11) | public function toMail(User $notifiable): MailMessage FILE: app/Settings/UserNotificationPreferences.php class UserNotificationPreferences (line 7) | class UserNotificationPreferences method __construct (line 9) | public function __construct( method notifyOnOwnPageChanges (line 14) | public function notifyOnOwnPageChanges(): bool method notifyOnOwnPageComments (line 19) | public function notifyOnOwnPageComments(): bool method notifyOnCommentReplies (line 24) | public function notifyOnCommentReplies(): bool method notifyOnCommentMentions (line 29) | public function notifyOnCommentMentions(): bool method updateFromSettingsArray (line 34) | public function updateFromSettingsArray(array $settings) method getNotificationSetting (line 47) | protected function getNotificationSetting(string $key): bool FILE: app/Settings/UserShortcutMap.php class UserShortcutMap (line 5) | class UserShortcutMap method __construct (line 40) | public function __construct(array $map) method merge (line 49) | protected function merge(array $map): void method getShortcut (line 61) | public function getShortcut(string $id): string method toJson (line 69) | public function toJson(): string method fromUserPreferences (line 77) | public static function fromUserPreferences(): self FILE: app/Sorting/BookSortController.php class BookSortController (line 14) | class BookSortController extends Controller method __construct (line 16) | public function __construct( method show (line 24) | public function show(string $bookSlug) method showItem (line 40) | public function showItem(string $bookSlug) method update (line 52) | public function update(Request $request, BookSorter $sorter, string $b... FILE: app/Sorting/BookSortMap.php class BookSortMap (line 5) | class BookSortMap method addItem (line 12) | public function addItem(BookSortMapItem $mapItem): void method all (line 20) | public function all(): array method fromJson (line 25) | public static function fromJson(string $json): self FILE: app/Sorting/BookSortMapItem.php class BookSortMapItem (line 5) | class BookSortMapItem method __construct (line 32) | public function __construct(int $id, int $sort, ?int $parentChapterId,... FILE: app/Sorting/BookSorter.php class BookSorter (line 14) | class BookSorter method __construct (line 16) | public function __construct( method runBookAutoSortForAllWithSet (line 22) | public function runBookAutoSortForAllWithSet(SortRule $set): void method runBookAutoSort (line 36) | public function runBookAutoSort(Book $book): void method sortUsingMap (line 86) | public function sortUsingMap(BookSortMap $sortMap): array method applySortUpdates (line 126) | protected function applySortUpdates(BookSortMapItem $sortMapItem, arra... method isSortChangePermissible (line 185) | protected function isSortChangePermissible(BookSortMapItem $sortMapIte... method loadModelsFromSortMap (line 245) | protected function loadModelsFromSortMap(BookSortMap $sortMap): array FILE: app/Sorting/SortRule.php class SortRule (line 20) | class SortRule extends Model implements Loggable method getOperations (line 27) | public function getOperations(): array method setOperations (line 35) | public function setOperations(array $options): void method logDescriptor (line 41) | public function logDescriptor(): string method getUrl (line 46) | public function getUrl(): string method books (line 51) | public function books(): HasMany method allByName (line 56) | public static function allByName(): Collection FILE: app/Sorting/SortRuleController.php class SortRuleController (line 11) | class SortRuleController extends Controller method __construct (line 13) | public function __construct() method create (line 18) | public function create() method store (line 25) | public function store(Request $request) method edit (line 47) | public function edit(string $id) method update (line 56) | public function update(string $id, Request $request, BookSorter $bookS... method destroy (line 83) | public function destroy(string $id, Request $request) FILE: app/Sorting/SortRuleOperation.php method getLabel (line 24) | public function getLabel(): string method getSortFunction (line 40) | public function getSortFunction(): callable method allExcluding (line 49) | public static function allExcluding(array $operations): array method fromSequence (line 63) | public static function fromSequence(string $sequence): array FILE: app/Sorting/SortSetOperationComparisons.php class SortSetOperationComparisons (line 13) | class SortSetOperationComparisons method nameAsc (line 15) | public static function nameAsc(Entity $a, Entity $b): int method nameDesc (line 20) | public static function nameDesc(Entity $a, Entity $b): int method nameNumericAsc (line 25) | public static function nameNumericAsc(Entity $a, Entity $b): int method nameNumericDesc (line 38) | public static function nameNumericDesc(Entity $a, Entity $b): int method createdDateAsc (line 43) | public static function createdDateAsc(Entity $a, Entity $b): int method createdDateDesc (line 48) | public static function createdDateDesc(Entity $a, Entity $b): int method updatedDateAsc (line 53) | public static function updatedDateAsc(Entity $a, Entity $b): int method updatedDateDesc (line 58) | public static function updatedDateDesc(Entity $a, Entity $b): int method chaptersFirst (line 63) | public static function chaptersFirst(Entity $a, Entity $b): int method chaptersLast (line 68) | public static function chaptersLast(Entity $a, Entity $b): int FILE: app/Sorting/SortUrl.php class SortUrl (line 10) | class SortUrl method __construct (line 12) | public function __construct( method withOverrideData (line 19) | public function withOverrideData(array $overrideData = []): self method build (line 24) | public function build(): string FILE: app/Theming/CustomHtmlHeadContentProvider.php class CustomHtmlHeadContentProvider (line 11) | class CustomHtmlHeadContentProvider method __construct (line 13) | public function __construct( method forWeb (line 24) | public function forWeb(): string method forExport (line 40) | public function forExport(): string method getSourceContent (line 54) | protected function getSourceContent(): string method getModuleHeadContent (line 62) | protected function getModuleHeadContent(): string FILE: app/Theming/ThemeController.php class ThemeController (line 10) | class ThemeController extends Controller method publicFile (line 15) | public function publicFile(string $theme, string $path): StreamedResponse FILE: app/Theming/ThemeEvents.php class ThemeEvents (line 16) | class ThemeEvents FILE: app/Theming/ThemeModule.php class ThemeModule (line 5) | readonly class ThemeModule method __construct (line 7) | public function __construct( method fromJson (line 20) | public static function fromJson(array $data, string $folderName): self method path (line 49) | public function path($path = ''): string method getVersion (line 55) | public function getVersion(): string FILE: app/Theming/ThemeModuleException.php class ThemeModuleException (line 5) | class ThemeModuleException extends \Exception FILE: app/Theming/ThemeModuleManager.php class ThemeModuleManager (line 7) | class ThemeModuleManager method __construct (line 12) | public function __construct( method getByName (line 20) | public function getByName(string $name): array method deleteModuleFolder (line 25) | public function deleteModuleFolder(string $moduleFolderName): void method addFromZip (line 45) | public function addFromZip(string $name, ThemeModuleZip $zip): ThemeMo... method deleteDirectoryRecursively (line 64) | protected function deleteDirectoryRecursively(string $path): void method load (line 81) | public function load(): array method loadFromFolder (line 109) | protected function loadFromFolder(string $folderName): ThemeModule|null FILE: app/Theming/ThemeModuleZip.php class ThemeModuleZip (line 7) | readonly class ThemeModuleZip method __construct (line 9) | public function __construct( method extractTo (line 14) | public function extractTo(string $destinationPath): void method getModuleInstance (line 26) | public function getModuleInstance(): ThemeModule method getPath (line 52) | public function getPath(): string method exists (line 60) | public function exists(): bool method getContentsSize (line 78) | public function getContentsSize(): int FILE: app/Theming/ThemeService.php class ThemeService (line 12) | class ThemeService method getTheme (line 28) | public function getTheme(): string method listen (line 37) | public function listen(string $event, callable $action): void method dispatch (line 54) | public function dispatch(string $event, ...$args): mixed method hasListeners (line 69) | public function hasListeners(string $event): bool method registerCommand (line 77) | public function registerCommand(Command $command): void method readThemeActions (line 87) | public function readThemeActions(): void method loadModules (line 110) | public function loadModules(): void method getModules (line 124) | public function getModules(): array method getModulesHash (line 132) | public function getModulesHash(): string method findFirstFile (line 147) | public function findFirstFile(string $path): ?string method addSocialDriver (line 167) | public function addSocialDriver(string $driverName, array $config, str... FILE: app/Theming/ThemeViews.php class ThemeViews (line 8) | class ThemeViews method __construct (line 20) | public function __construct( method registerViewPathsForTheme (line 30) | public function registerViewPathsForTheme(array $modules): void method handleViewInclude (line 45) | public function handleViewInclude(string $viewPath, array $data = [], ... method renderBefore (line 67) | public function renderBefore(string $targetView, string $localView, in... method renderAfter (line 75) | public function renderAfter(string $targetView, string $localView, int... method hasRegisteredViews (line 80) | public function hasRegisteredViews(): bool method registerAdjacentView (line 85) | protected function registerAdjacentView(array &$location, string $targ... method renderViewSets (line 104) | protected function renderViewSets(array $viewSet, array $data, array $... FILE: app/Translation/FileLoader.php class FileLoader (line 8) | class FileLoader extends BaseLoader method load (line 22) | public function load($locale, $group, $namespace = null): array FILE: app/Translation/LocaleDefinition.php class LocaleDefinition (line 5) | class LocaleDefinition method __construct (line 7) | public function __construct( method appLocale (line 17) | public function appLocale(): string method isoLocale (line 25) | public function isoLocale(): string method htmlLang (line 33) | public function htmlLang(): string method htmlDirection (line 41) | public function htmlDirection(): string method trans (line 49) | public function trans(string $key, array $replace = []): string FILE: app/Translation/LocaleManager.php class LocaleManager (line 8) | class LocaleManager method getLocaleForUser (line 79) | protected function getLocaleForUser(User $user): string method getForUser (line 93) | public function getForUser(User $user): LocaleDefinition method autoDetectLocale (line 108) | protected function autoDetectLocale(Request $request, string $default)... method getAllAppLocales (line 124) | public function getAllAppLocales(): array FILE: app/Translation/MessageSelector.php class MessageSelector (line 12) | class MessageSelector extends BaseClass method getPluralIndex (line 14) | public function getPluralIndex($locale, $number) FILE: app/Uploads/Attachment.php class Attachment (line 31) | class Attachment extends Model implements OwnableInterface method getFileName (line 45) | public function getFileName(): string method page (line 57) | public function page(): BelongsTo method jointPermissions (line 62) | public function jointPermissions(): HasMany method getUrl (line 71) | public function getUrl($openInline = false): string method editorContent (line 84) | public function editorContent(): array method htmlLink (line 98) | public function htmlLink(): string method markdownLink (line 106) | public function markdownLink(): string method scopeVisible (line 114) | public function scopeVisible(): Builder FILE: app/Uploads/AttachmentService.php class AttachmentService (line 9) | class AttachmentService method __construct (line 11) | public function __construct( method streamAttachmentFromStorage (line 21) | public function streamAttachmentFromStorage(Attachment $attachment) method getAttachmentFileSize (line 29) | public function getAttachmentFileSize(Attachment $attachment): int method saveNewUpload (line 39) | public function saveNewUpload(UploadedFile $uploadedFile, int $pageId)... method saveUpdatedUpload (line 65) | public function saveUpdatedUpload(UploadedFile $uploadedFile, Attachme... method saveNewFromLink (line 86) | public function saveNewFromLink(string $name, string $link, int $page_... method updateFileOrderWithinPage (line 105) | public function updateFileOrderWithinPage(array $attachmentOrder, stri... method updateFile (line 117) | public function updateFile(Attachment $attachment, array $requestData)... method deleteFile (line 143) | public function deleteFile(Attachment $attachment) method deleteFileInStorage (line 156) | public function deleteFileInStorage(Attachment $attachment): void method putFileInStorage (line 166) | protected function putFileInStorage(UploadedFile $uploadedFile): string method getFileValidationRules (line 181) | public static function getFileValidationRules(): array FILE: app/Uploads/Controllers/AttachmentApiController.php class AttachmentApiController (line 17) | class AttachmentApiController extends ApiController method __construct (line 19) | public function __construct( method list (line 30) | public function list() method create (line 48) | public function create(Request $request) method read (line 80) | public function read(string $id) method update (line 129) | public function update(Request $request, string $id) method delete (line 161) | public function delete(string $id) method rules (line 172) | protected function rules(): array FILE: app/Uploads/Controllers/AttachmentController.php class AttachmentController (line 20) | class AttachmentController extends Controller method __construct (line 22) | public function __construct( method upload (line 35) | public function upload(Request $request) method uploadUpdate (line 64) | public function uploadUpdate(Request $request, $attachmentId) method getUpdateForm (line 90) | public function getUpdateForm(string $attachmentId) method update (line 106) | public function update(Request $request, string $attachmentId) method attachLink (line 142) | public function attachLink(Request $request) method listForPage (line 178) | public function listForPage(int $pageId) method sortForPage (line 193) | public function sortForPage(Request $request, int $pageId) method get (line 213) | public function get(Request $request, string $attachmentId) method delete (line 246) | public function delete(string $attachmentId) FILE: app/Uploads/Controllers/DrawioImageController.php class DrawioImageController (line 14) | class DrawioImageController extends Controller method __construct (line 16) | public function __construct( method list (line 25) | public function list(Request $request, ImageResizer $resizer) method create (line 54) | public function create(Request $request) method getAsBase64 (line 77) | public function getAsBase64($id) FILE: app/Uploads/Controllers/GalleryImageController.php class GalleryImageController (line 14) | class GalleryImageController extends Controller method __construct (line 16) | public function __construct( method list (line 25) | public function list(Request $request, ImageResizer $resizer) method create (line 54) | public function create(Request $request) FILE: app/Uploads/Controllers/ImageController.php class ImageController (line 18) | class ImageController extends Controller method __construct (line 20) | public function __construct( method showImage (line 32) | public function showImage(string $path) method update (line 46) | public function update(Request $request, string $id) method updateFile (line 67) | public function updateFile(Request $request, string $id) method edit (line 96) | public function edit(Request $request, string $id) method destroy (line 126) | public function destroy(string $id) method rebuildThumbnails (line 140) | public function rebuildThumbnails(string $id) method checkImagePermission (line 159) | protected function checkImagePermission(Image $image): void FILE: app/Uploads/Controllers/ImageGalleryApiController.php class ImageGalleryApiController (line 15) | class ImageGalleryApiController extends ApiController method __construct (line 21) | public function __construct( method rules (line 29) | protected function rules(): array method list (line 52) | public function list() method create (line 73) | public function create(Request $request) method read (line 97) | public function read(string $id) method readData (line 108) | public function readData(string $id) method readDataForUrl (line 120) | public function readDataForUrl(Request $request) method update (line 140) | public function update(Request $request, string $id) method delete (line 160) | public function delete(string $id) method formatForSingleResponse (line 173) | protected function formatForSingleResponse(Image $image): array FILE: app/Uploads/FaviconHandler.php class FaviconHandler (line 7) | class FaviconHandler method __construct (line 11) | public function __construct( method saveForUploadedImage (line 20) | public function saveForUploadedImage(UploadedFile $file): void method restoreOriginal (line 37) | public function restoreOriginal(): bool method restoreOriginalIfNotExists (line 51) | public function restoreOriginalIfNotExists(): bool method getPath (line 63) | public function getPath(): string method getOriginalPath (line 71) | public function getOriginalPath(): string method pngToIco (line 81) | protected function pngToIco(string $pngData, int $width, int $height):... FILE: app/Uploads/FileStorage.php class FileStorage (line 14) | class FileStorage method __construct (line 16) | public function __construct( method getReadStream (line 24) | public function getReadStream(string $path) method getSize (line 29) | public function getSize(string $path): int method delete (line 34) | public function delete(string $path, bool $removeEmptyDir = false): void method uploadFile (line 49) | public function uploadFile(UploadedFile $file, string $subDirectory, s... method isRemote (line 76) | public function isRemote(): bool method getSystemPath (line 84) | public function getSystemPath(string $filePath): string method getStorageDisk (line 96) | protected function getStorageDisk(): Storage method getStorageDiskName (line 104) | protected function getStorageDiskName(): string method adjustPathForStorageDisk (line 121) | protected function adjustPathForStorageDisk(string $path): string FILE: app/Uploads/Image.php class Image (line 25) | class Image extends Model implements OwnableInterface method jointPermissions (line 33) | public function jointPermissions(): HasMany method scopeVisible (line 43) | public function scopeVisible(Builder $query): Builder method getThumb (line 56) | public function getThumb(?int $width, ?int $height, bool $keepRatio = ... method getPage (line 65) | public function getPage(): ?Page FILE: app/Uploads/ImageRepo.php class ImageRepo (line 12) | class ImageRepo method __construct (line 14) | public function __construct( method getById (line 25) | public function getById($id): Image method returnPaginated (line 34) | protected function returnPaginated(Builder $query, int $page = 1, int ... method getPaginatedByType (line 48) | public function getPaginatedByType( method getEntityFiltered (line 79) | public function getEntityFiltered( method saveNew (line 112) | public function saveNew( method saveNewFromData (line 134) | public function saveNewFromData(string $imageName, string $imageData, ... method saveDrawing (line 147) | public function saveDrawing(string $base64Uri, int $uploadedTo): Image method updateImageDetails (line 159) | public function updateImageDetails(Image $image, $updateDetails): Image method updateImageFile (line 173) | public function updateImageFile(Image $image, UploadedFile $file): void method destroyImage (line 193) | public function destroyImage(?Image $image = null): void method destroyByUrlAndType (line 205) | public function destroyByUrlAndType(string $url, string $imageType): void method getImageData (line 220) | public function getImageData(Image $image): ?string method getPagesUsingImage (line 232) | public function getPagesUsingImage(Image $image): array FILE: app/Uploads/ImageResizer.php class ImageResizer (line 19) | class ImageResizer method __construct (line 23) | public function __construct( method loadGalleryThumbnailsForMany (line 32) | public function loadGalleryThumbnailsForMany(iterable $images, bool $s... method loadGalleryThumbnailsForImage (line 42) | public function loadGalleryThumbnailsForImage(Image $image, bool $shou... method resizeToThumbnailUrl (line 63) | public function resizeToThumbnailUrl( method resizeImageData (line 118) | public function resizeImageData( method interventionFromImageData (line 161) | protected function interventionFromImageData(string $imageData, ?strin... method orientImageToOriginalExif (line 195) | protected function orientImageToOriginalExif(InterventionImage $image,... method isGif (line 233) | protected function isGif(Image $image): bool method getExtension (line 241) | protected function getExtension(Image $image): string method isApngData (line 249) | protected function isApngData(string &$imageData): bool method isAnimatedAvifData (line 260) | protected function isAnimatedAvifData(string &$imageData): bool method isAnimated (line 282) | protected function isAnimated(Image $image, string &$imageData): bool FILE: app/Uploads/ImageService.php class ImageService (line 14) | class ImageService method __construct (line 18) | public function __construct( method saveNewFromUpload (line 30) | public function saveNewFromUpload( method saveNewFromBase64Uri (line 54) | public function saveNewFromBase64Uri(string $base64Uri, string $name, ... method saveNew (line 70) | public function saveNew(string $imageName, string $imageData, string $... method replaceExistingFromUpload (line 118) | public function replaceExistingFromUpload(string $path, string $type, ... method getImageData (line 130) | public function getImageData(Image $image): string method getImageStream (line 143) | public function getImageStream(Image $image): mixed method destroy (line 155) | public function destroy(Image $image): void method destroyFileAtPath (line 164) | public function destroyFileAtPath(string $type, string $path): void method deleteUnusedImages (line 177) | public function deleteUnusedImages(bool $checkRevisions = true, bool $... method imageUrlToBase64 (line 214) | public function imageUrlToBase64(string $url): ?string method pathAccessibleInLocalSecure (line 251) | public function pathAccessibleInLocalSecure(string $imagePath): bool method pathAccessible (line 261) | public function pathAccessible(string $imagePath): bool method imageAccessible (line 277) | public function imageAccessible(Image $image): bool method blockedBySecureImages (line 294) | protected function blockedBySecureImages(): bool method imageFileExists (line 304) | protected function imageFileExists(string $imagePath, string $imageTyp... method checkUserHasAccessToRelationOfImageAtPath (line 314) | protected function checkUserHasAccessToRelationOfImageAtPath(string $p... method checkUserHasAccessToRelationOfImage (line 339) | protected function checkUserHasAccessToRelationOfImage(Image $image): ... method streamImageFromStorageResponse (line 367) | public function streamImageFromStorageResponse(string $imageType, stri... method isExtensionSupported (line 379) | public static function isExtensionSupported(string $extension): bool FILE: app/Uploads/ImageStorage.php class ImageStorage (line 8) | class ImageStorage method __construct (line 10) | public function __construct( method getDisk (line 18) | public function getDisk(string $imageType = ''): ImageStorageDisk method usingSecureRestrictedImages (line 32) | public function usingSecureRestrictedImages(): bool method usingSecureImages (line 41) | public function usingSecureImages(): bool method cleanImageFileName (line 49) | public function cleanImageFileName(string $name): string method getDiskName (line 67) | protected function getDiskName(string $imageType): string method urlToPath (line 91) | public function urlToPath(string $url): ?string method getPublicUrl (line 124) | public static function getPublicUrl(string $filePath): string method getPublicBaseUrl (line 135) | protected static function getPublicBaseUrl(): string FILE: app/Uploads/ImageStorageDisk.php class ImageStorageDisk (line 13) | class ImageStorageDisk method __construct (line 15) | public function __construct( method usingSecureImages (line 25) | public function usingSecureImages(): bool method adjustPathForDisk (line 34) | protected function adjustPathForDisk(string $path): string method exists (line 49) | public function exists(string $path): bool method get (line 57) | public function get(string $path): ?string method stream (line 66) | public function stream(string $path): mixed method put (line 75) | public function put(string $path, string $data, bool $makePublic = fal... method destroyAllMatchingNameFromPath (line 100) | public function destroyAllMatchingNameFromPath(string $path): void method mimeType (line 127) | public function mimeType(string $path): string method response (line 136) | public function response(string $path): StreamedResponse method isS3Like (line 144) | protected function isS3Like(): bool method isFolderEmpty (line 153) | protected function isFolderEmpty(string $path): bool FILE: app/Uploads/UserAvatars.php class UserAvatars (line 15) | class UserAvatars method __construct (line 17) | public function __construct( method fetchAndAssignToUser (line 26) | public function fetchAndAssignToUser(User $user): void method assignToUserFromExistingData (line 45) | public function assignToUserFromExistingData(User $user, string $image... method assignToUserFromUrl (line 60) | public function assignToUserFromUrl(User $user, string $avatarUrl): void method destroyAllForUser (line 87) | public function destroyAllForUser(User $user): void method saveAvatarImage (line 103) | protected function saveAvatarImage(User $user, int $size = 500): Image method createAvatarImageFromData (line 123) | protected function createAvatarImageFromData(User $user, string $image... method getAvatarImageData (line 140) | protected function getAvatarImageData(string $url): string method avatarFetchEnabled (line 170) | public function avatarFetchEnabled(): bool method getAvatarUrl (line 180) | public function getAvatarUrl(): string FILE: app/Users/Controllers/RoleApiController.php class RoleApiController (line 12) | class RoleApiController extends ApiController method __construct (line 37) | public function __construct( method list (line 52) | public function list() method create (line 69) | public function create(Request $request) method read (line 88) | public function read(string $id) method update (line 104) | public function update(Request $request, string $id) method delete (line 118) | public function delete(string $id) method singleFormatter (line 128) | protected function singleFormatter(Role $role): void FILE: app/Users/Controllers/RoleController.php class RoleController (line 15) | class RoleController extends Controller method __construct (line 17) | public function __construct( method index (line 25) | public function index(Request $request) method create (line 51) | public function create(Request $request) method store (line 73) | public function store(Request $request) method edit (line 94) | public function edit(string $id) method update (line 107) | public function update(Request $request, string $id) method showDelete (line 129) | public function showDelete(string $id) method delete (line 148) | public function delete(Request $request, string $id) FILE: app/Users/Controllers/UserAccountController.php class UserAccountController (line 17) | class UserAccountController extends Controller method __construct (line 19) | public function __construct( method redirect (line 33) | public function redirect() method showProfile (line 41) | public function showProfile() method updateProfile (line 54) | public function updateProfile(Request $request, ImageRepo $imageRepo) method showShortcuts (line 90) | public function showShortcuts() method updateShortcuts (line 107) | public function updateShortcuts(Request $request) method showNotifications (line 124) | public function showNotifications(PermissionApplicator $permissions) method updateNotifications (line 146) | public function updateNotifications(Request $request) method showAuth (line 165) | public function showAuth(SocialDriverManager $socialDriverManager) method updatePassword (line 182) | public function updatePassword(Request $request) method delete (line 205) | public function delete() method destroy (line 217) | public function destroy(Request $request) FILE: app/Users/Controllers/UserApiController.php class UserApiController (line 16) | class UserApiController extends ApiController method __construct (line 24) | public function __construct(UserRepo $userRepo) method rules (line 37) | protected function rules(?int $userId = null): array method list (line 76) | public function list() method create (line 92) | public function create(Request $request) method read (line 111) | public function read(string $id) method update (line 125) | public function update(Request $request, string $id) method delete (line 141) | public function delete(Request $request, string $id) method singleFormatter (line 154) | protected function singleFormatter(User $user) method listFormatter (line 164) | protected function listFormatter(User $user) FILE: app/Users/Controllers/UserController.php class UserController (line 23) | class UserController extends Controller method __construct (line 25) | public function __construct( method index (line 34) | public function index(Request $request) method create (line 60) | public function create() method store (line 75) | public function store(Request $request) method edit (line 113) | public function edit(int $id, SocialDriverManager $socialDriverManager) method update (line 142) | public function update(Request $request, int $id) method delete (line 184) | public function delete(int $id) method destroy (line 199) | public function destroy(Request $request, int $id) FILE: app/Users/Controllers/UserPreferencesController.php class UserPreferencesController (line 9) | class UserPreferencesController extends Controller method __construct (line 11) | public function __construct( method changeView (line 19) | public function changeView(Request $request, string $type) method changeSort (line 40) | public function changeSort(Request $request, string $type) method toggleDarkMode (line 61) | public function toggleDarkMode(Request $request) method changeExpansion (line 72) | public function changeExpansion(Request $request, string $type) method updateCodeLanguageFavourite (line 88) | public function updateCodeLanguageFavourite(Request $request) FILE: app/Users/Controllers/UserProfileController.php class UserProfileController (line 11) | class UserProfileController extends Controller method __construct (line 13) | public function __construct( method show (line 25) | public function show(string $slug) FILE: app/Users/Controllers/UserSearchController.php class UserSearchController (line 11) | class UserSearchController extends Controller method forSelect (line 17) | public function forSelect(Request $request) method forMentions (line 50) | public function forMentions(Request $request) FILE: app/Users/Models/HasCreatorAndUpdater.php type HasCreatorAndUpdater (line 13) | trait HasCreatorAndUpdater method createdBy (line 18) | public function createdBy(): BelongsTo method updatedBy (line 26) | public function updatedBy(): BelongsTo method getOwnerFieldName (line 31) | public function getOwnerFieldName(): string FILE: app/Users/Models/OwnableInterface.php type OwnableInterface (line 5) | interface OwnableInterface method getOwnerFieldName (line 7) | public function getOwnerFieldName(): string; FILE: app/Users/Models/Role.php class Role (line 26) | class Role extends Model implements Loggable method users (line 41) | public function users(): BelongsToMany method jointPermissions (line 49) | public function jointPermissions(): HasMany method permissions (line 58) | public function permissions(): BelongsToMany method entityPermissions (line 67) | public function entityPermissions(): HasMany method hasPermission (line 75) | public function hasPermission(string $permissionName): bool method attachPermission (line 90) | public function attachPermission(RolePermission $permission) method detachPermission (line 98) | public function detachPermission(RolePermission $permission) method getRole (line 106) | public static function getRole(string $displayName): ?self method getSystemRole (line 114) | public static function getSystemRole(string $systemName): ?self method logDescriptor (line 128) | public function logDescriptor(): string FILE: app/Users/Models/User.php class User (line 48) | class User extends Model implements AuthenticatableContract, CanResetPas... method getGuest (line 95) | public static function getGuest(): self method isGuest (line 103) | public function isGuest(): bool method hasAppAccess (line 111) | public function hasAppAccess(): bool method roles (line 121) | public function roles(): BelongsToMany method hasRole (line 129) | public function hasRole($roleId): bool method hasSystemRole (line 137) | public function hasSystemRole(string $roleSystemName): bool method attachDefaultRole (line 145) | public function attachDefaultRole(): void method can (line 156) | public function can(string|Permission $permission): bool method permissions (line 165) | protected function permissions(): Collection method clearPermissionCache (line 184) | public function clearPermissionCache(): void method attachRole (line 192) | public function attachRole(Role $role): void method socialAccounts (line 201) | public function socialAccounts(): HasMany method hasSocialAccount (line 210) | public function hasSocialAccount(string $socialDriver = ''): bool method getAvatar (line 222) | public function getAvatar(int $size = 50): string method avatar (line 248) | public function avatar(): BelongsTo method apiTokens (line 256) | public function apiTokens(): HasMany method favourites (line 264) | public function favourites(): HasMany method mfaValues (line 272) | public function mfaValues(): HasMany method watches (line 280) | public function watches(): HasMany method scopeWithLastActivityAt (line 288) | public function scopeWithLastActivityAt(Builder $query) method getEditUrl (line 301) | public function getEditUrl(string $path = ''): string method getProfileUrl (line 311) | public function getProfileUrl(): string method getShortName (line 319) | public function getShortName(int $chars = 8): string method getLocale (line 336) | public function getLocale(): LocaleDefinition method sendPasswordResetNotification (line 348) | public function sendPasswordResetNotification($token) method logDescriptor (line 356) | public function logDescriptor(): string FILE: app/Users/Queries/RolesAllPaginatedAndSorted.php class RolesAllPaginatedAndSorted (line 12) | class RolesAllPaginatedAndSorted method run (line 14) | public function run(int $count, SimpleListOptions $listOptions): Lengt... FILE: app/Users/Queries/UserContentCounts.php class UserContentCounts (line 11) | class UserContentCounts method __construct (line 13) | public function __construct( method run (line 22) | public function run(User $user): array FILE: app/Users/Queries/UserRecentlyCreatedContent.php class UserRecentlyCreatedContent (line 13) | class UserRecentlyCreatedContent method __construct (line 15) | public function __construct( method run (line 23) | public function run(User $user, int $count): array FILE: app/Users/Queries/UsersAllPaginatedAndSorted.php class UsersAllPaginatedAndSorted (line 15) | class UsersAllPaginatedAndSorted method run (line 17) | public function run(int $count, SimpleListOptions $listOptions): Lengt... FILE: app/Users/UserRepo.php class UserRepo (line 21) | class UserRepo method __construct (line 23) | public function __construct( method getByEmail (line 33) | public function getByEmail(string $email): ?User method getById (line 41) | public function getById(int $id): User method getBySlug (line 49) | public function getBySlug(string $slug): User method createWithoutActivity (line 59) | public function createWithoutActivity(array $data, bool $emailConfirme... method create (line 90) | public function create(array $data, bool $sendInvite = false): User method updateWithoutActivity (line 110) | public function updateWithoutActivity(User $user, array $data, bool $m... method update (line 149) | public function update(User $user, array $data, bool $manageUsersAllow... method destroy (line 163) | public function destroy(User $user, ?int $newOwnerId = null): void method removeUserDependantRelations (line 187) | protected function removeUserDependantRelations(User $user): void method nullifyUserNonDependantRelations (line 200) | protected function nullifyUserNonDependantRelations(User $user): void method ensureDeletable (line 226) | protected function ensureDeletable(User $user): void method migrateOwnership (line 240) | protected function migrateOwnership(User $fromUser, User|null $toUser)... method downloadAndAssignUserAvatar (line 252) | protected function downloadAndAssignUserAvatar(User $user): void method isOnlyAdmin (line 264) | protected function isOnlyAdmin(User $user): bool method setUserRoles (line 283) | protected function setUserRoles(User $user, array $roles): void method demotingLastAdmin (line 298) | protected function demotingLastAdmin(User $user, array $newRoles): bool FILE: app/Util/ConfiguredHtmlPurifier.php class ConfiguredHtmlPurifier (line 18) | class ConfiguredHtmlPurifier method __construct (line 23) | public function __construct() method createCacheFolderIfNeeded (line 42) | protected function createCacheFolderIfNeeded(string $cachePath): void method resetCacheIfNeeded (line 49) | protected function resetCacheIfNeeded(HTMLPurifier_Config $config): void method setConfig (line 68) | protected function setConfig(HTMLPurifier_Config $config, string $cach... method configureDefinition (line 94) | public function configureDefinition(HTMLPurifier_HTMLDefinition $defin... method purify (line 154) | public function purify(string $html): string FILE: app/Util/CspService.php class CspService (line 7) | class CspService method __construct (line 11) | public function __construct(string $nonce = '') method getNonce (line 19) | public function getNonce(): string method getCspHeader (line 27) | public function getCspHeader(): string method getCspMetaTagValue (line 43) | public function getCspMetaTagValue(): string method allowedIFrameHostsConfigured (line 58) | public function allowedIFrameHostsConfigured(): bool method getScriptSrc (line 66) | protected function getScriptSrc(): string method getFrameAncestors (line 85) | protected function getFrameAncestors(): string method getFrameSrc (line 97) | protected function getFrameSrc(): string method getObjectSrc (line 109) | protected function getObjectSrc(): string method getBaseUri (line 122) | protected function getBaseUri(): string method scriptFilteringDisabled (line 127) | protected function scriptFilteringDisabled(): bool method getAllowedIframeHosts (line 132) | protected function getAllowedIframeHosts(): array method getAllowedIframeSources (line 139) | protected function getAllowedIframeSources(): array method getDrawioHost (line 151) | protected function getDrawioHost(): string FILE: app/Util/DatabaseTransaction.php class DatabaseTransaction (line 24) | class DatabaseTransaction method __construct (line 29) | public function __construct( method run (line 37) | public function run(): mixed FILE: app/Util/DateFormatter.php class DateFormatter (line 8) | class DateFormatter method __construct (line 10) | public function __construct( method absolute (line 15) | public function absolute(Carbon $date): string method relative (line 22) | public function relative(Carbon $date, bool $includeSuffix = true): st... FILE: app/Util/FilePathNormalizer.php class FilePathNormalizer (line 11) | class FilePathNormalizer method normalize (line 13) | public static function normalize(string $path): string FILE: app/Util/HtmlContentFilter.php class HtmlContentFilter (line 9) | class HtmlContentFilter method __construct (line 11) | public function __construct( method filterDocument (line 16) | public function filterDocument(HtmlDocument $doc): string method filterString (line 39) | public function filterString(string $html): string method applyAllowListFiltering (line 44) | protected function applyAllowListFiltering(string $html): string method filterOutScriptsFromDocument (line 50) | protected function filterOutScriptsFromDocument(HtmlDocument $doc): void method filterOutFormElementsFromDocument (line 88) | protected function filterOutFormElementsFromDocument(HtmlDocument $doc... method filterOutBadHtmlElementsFromDocument (line 115) | protected function filterOutBadHtmlElementsFromDocument(HtmlDocument $... method filterOutNonContentElementsFromDocument (line 122) | protected function filterOutNonContentElementsFromDocument(HtmlDocumen... method xpathContains (line 136) | protected static function xpathContains(string $property, string $valu... method removeNodes (line 147) | protected static function removeNodes(DOMNodeList $nodes): void method removeAttributes (line 157) | protected static function removeAttributes(DOMNodeList $attrs): void method removeScriptsFromDocument (line 173) | public static function removeScriptsFromDocument(HtmlDocument $doc): void method removeScriptsFromHtmlString (line 188) | public static function removeScriptsFromHtmlString(string $html): string FILE: app/Util/HtmlContentFilterConfig.php class HtmlContentFilterConfig (line 5) | readonly class HtmlContentFilterConfig method __construct (line 7) | public function __construct( method fromConfigString (line 20) | public static function fromConfigString(string $config): self FILE: app/Util/HtmlDescriptionFilter.php class HtmlDescriptionFilter (line 15) | class HtmlDescriptionFilter method filterFromString (line 32) | public static function filterFromString(string $html): string method filterElement (line 53) | protected static function filterElement(DOMElement $element): void FILE: app/Util/HtmlDocument.php class HtmlDocument (line 16) | class HtmlDocument method __construct (line 22) | public function __construct(string $partialHtml = '', int $loadOptions... method loadPartialHtml (line 37) | public function loadPartialHtml(string $html): void method loadCompleteHtml (line 47) | public function loadCompleteHtml(string $html): void method queryXPath (line 57) | public function queryXPath(string $expression): DOMNodeList method createElement (line 74) | public function createElement(string $localName, string $value = ''): ... method createTextNode (line 88) | public function createTextNode(string $text): DOMText method getElementById (line 96) | public function getElementById(string $elementId): ?DOMElement method getBody (line 104) | public function getBody(): DOMNode method getBodyChildren (line 119) | public function getBodyChildren(): DOMNodeList method getBodyInnerHtml (line 128) | public function getBodyInnerHtml(): string method getHtml (line 141) | public function getHtml(): string method getNodeInnerHtml (line 149) | public function getNodeInnerHtml(DOMNode $node): string method getNodeOuterHtml (line 163) | public function getNodeOuterHtml(DOMNode $node): string FILE: app/Util/HtmlNonceApplicator.php class HtmlNonceApplicator (line 8) | class HtmlNonceApplicator method prepare (line 16) | public static function prepare(string $html): string method apply (line 41) | public static function apply(string $html, string $nonce): string method addNonceAttributes (line 46) | protected static function addNonceAttributes(DOMNodeList $nodes, strin... FILE: app/Util/OutOfMemoryHandler.php class OutOfMemoryHandler (line 16) | class OutOfMemoryHandler method __construct (line 21) | public function __construct(callable $onOutOfMemory, int $memoryReserv... method handle (line 31) | protected function handle(): mixed method forget (line 47) | public function forget(): void method getHandler (line 54) | protected function getHandler(): Handler FILE: app/Util/SimpleListOptions.php class SimpleListOptions (line 11) | class SimpleListOptions method __construct (line 19) | public function __construct(string $typeKey, string $sort, string $ord... method fromRequest (line 31) | public static function fromRequest(Request $request, string $typeKey, ... method withSortOptions (line 46) | public function withSortOptions(array $sortOptions): self method getOrder (line 56) | public function getOrder(): string method getSort (line 64) | public function getSort(): string method getSearch (line 79) | public function getSearch(): string method getPaginationAppends (line 87) | public function getPaginationAppends(): array method getSortControlData (line 95) | public function getSortControlData(): array FILE: app/Util/SsrUrlValidator.php class SsrUrlValidator (line 12) | class SsrUrlValidator method __construct (line 16) | public function __construct(?string $config = null) method ensureAllowed (line 24) | public function ensureAllowed(string $url): void method allowed (line 34) | public function allowed(string $url): bool method urlMatchesPattern (line 47) | protected function urlMatchesPattern($url, $pattern): bool method getHostPatterns (line 65) | protected function getHostPatterns(): array FILE: app/Util/SvgIcon.php class SvgIcon (line 7) | class SvgIcon method __construct (line 9) | public function __construct( method toHtml (line 15) | public function toHtml(): string FILE: app/Util/WebSafeMimeSniffer.php class WebSafeMimeSniffer (line 11) | class WebSafeMimeSniffer method sniff (line 64) | public function sniff(string &$content, string $extension = ''): string FILE: database/factories/Access/Mfa/MfaValueFactory.php class MfaValueFactory (line 11) | class MfaValueFactory extends Factory method definition (line 20) | public function definition(): array FILE: database/factories/Access/SocialAccountFactory.php class SocialAccountFactory (line 11) | class SocialAccountFactory extends Factory method definition (line 20) | public function definition(): array FILE: database/factories/Activity/Models/ActivityFactory.php class ActivityFactory (line 12) | class ActivityFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Activity/Models/CommentFactory.php class CommentFactory (line 8) | class CommentFactory extends Factory method definition (line 27) | public function definition() FILE: database/factories/Activity/Models/FavouriteFactory.php class FavouriteFactory (line 12) | class FavouriteFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Activity/Models/TagFactory.php class TagFactory (line 7) | class TagFactory extends Factory method definition (line 21) | public function definition() FILE: database/factories/Activity/Models/WatchFactory.php class WatchFactory (line 13) | class WatchFactory extends Factory method definition (line 22) | public function definition(): array FILE: database/factories/Activity/Models/WebhookFactory.php class WebhookFactory (line 8) | class WebhookFactory extends Factory method definition (line 17) | public function definition() FILE: database/factories/Activity/Models/WebhookTrackedEventFactory.php class WebhookTrackedEventFactory (line 9) | class WebhookTrackedEventFactory extends Factory method definition (line 16) | public function definition() FILE: database/factories/Api/ApiTokenFactory.php class ApiTokenFactory (line 11) | class ApiTokenFactory extends Factory method definition (line 15) | public function definition(): array FILE: database/factories/Entities/Models/BookFactory.php class BookFactory (line 8) | class BookFactory extends Factory method definition (line 22) | public function definition() FILE: database/factories/Entities/Models/BookshelfFactory.php class BookshelfFactory (line 8) | class BookshelfFactory extends Factory method definition (line 22) | public function definition() FILE: database/factories/Entities/Models/ChapterFactory.php class ChapterFactory (line 8) | class ChapterFactory extends Factory method definition (line 22) | public function definition() FILE: database/factories/Entities/Models/DeletionFactory.php class DeletionFactory (line 12) | class DeletionFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Entities/Models/PageFactory.php class PageFactory (line 9) | class PageFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Entities/Models/PageRevisionFactory.php class PageRevisionFactory (line 9) | class PageRevisionFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Entities/Models/SlugHistoryFactory.php class SlugHistoryFactory (line 11) | class SlugHistoryFactory extends Factory method definition (line 20) | public function definition(): array FILE: database/factories/Exports/ImportFactory.php class ImportFactory (line 9) | class ImportFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Sorting/SortRuleFactory.php class SortRuleFactory (line 9) | class SortRuleFactory extends Factory method definition (line 21) | public function definition(): array FILE: database/factories/Uploads/AttachmentFactory.php class AttachmentFactory (line 12) | class AttachmentFactory extends Factory method definition (line 26) | public function definition() FILE: database/factories/Uploads/ImageFactory.php class ImageFactory (line 7) | class ImageFactory extends Factory method definition (line 21) | public function definition() FILE: database/factories/Users/Models/RoleFactory.php class RoleFactory (line 7) | class RoleFactory extends Factory method definition (line 21) | public function definition() FILE: database/factories/Users/Models/UserFactory.php class UserFactory (line 9) | class UserFactory extends Factory method definition (line 23) | public function definition() FILE: database/migrations/2014_10_12_000000_create_users_table.php method up (line 14) | public function up(): void method down (line 38) | public function down(): void FILE: database/migrations/2014_10_12_100000_create_password_resets_table.php method up (line 12) | public function up(): void method down (line 24) | public function down(): void FILE: database/migrations/2015_07_12_114933_create_books_table.php method up (line 12) | public function up(): void method down (line 26) | public function down(): void FILE: database/migrations/2015_07_12_190027_create_pages_table.php method up (line 12) | public function up(): void method down (line 30) | public function down(): void FILE: database/migrations/2015_07_13_172121_create_images_table.php method up (line 12) | public function up(): void method down (line 25) | public function down(): void FILE: database/migrations/2015_07_27_172342_create_chapters_table.php method up (line 12) | public function up(): void method down (line 28) | public function down(): void FILE: database/migrations/2015_08_08_200447_add_users_to_entities.php method up (line 12) | public function up(): void method down (line 35) | public function down(): void FILE: database/migrations/2015_08_09_093534_create_page_revisions_table.php method up (line 12) | public function up(): void method down (line 28) | public function down(): void FILE: database/migrations/2015_08_16_142133_create_activities_table.php method up (line 12) | public function up(): void method down (line 29) | public function down(): void FILE: database/migrations/2015_08_29_105422_add_roles_and_permissions.php method up (line 24) | public function up(): void method down (line 143) | public function down(): void FILE: database/migrations/2015_08_30_125859_create_settings_table.php method up (line 12) | public function up(): void method down (line 24) | public function down(): void FILE: database/migrations/2015_08_31_175240_add_search_indexes.php method up (line 13) | public function up() method down (line 27) | public function down(): void FILE: database/migrations/2015_09_04_165821_create_social_accounts_table.php method up (line 12) | public function up(): void method down (line 27) | public function down(): void FILE: database/migrations/2015_09_05_164707_add_email_confirmation_table.php method up (line 12) | public function up(): void method down (line 29) | public function down(): void FILE: database/migrations/2015_11_21_145609_create_views_table.php method up (line 12) | public function up(): void method down (line 27) | public function down(): void FILE: database/migrations/2015_11_26_221857_add_entity_indexes.php method up (line 12) | public function up(): void method down (line 51) | public function down(): void FILE: database/migrations/2015_12_05_145049_fulltext_weighting.php method up (line 13) | public function up() method down (line 27) | public function down(): void FILE: database/migrations/2015_12_07_195238_add_image_upload_types.php method up (line 13) | public function up(): void method down (line 30) | public function down(): void FILE: database/migrations/2015_12_09_195748_add_user_avatars.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2016_01_11_210908_add_external_auth_to_users.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2016_02_25_184030_add_slug_to_revisions.php method up (line 12) | public function up(): void method down (line 25) | public function down(): void FILE: database/migrations/2016_02_27_120329_update_permissions_and_roles.php method up (line 12) | public function up(): void method down (line 70) | public function down(): void FILE: database/migrations/2016_02_28_084200_add_entity_access_controls.php method up (line 12) | public function up(): void method down (line 49) | public function down(): void FILE: database/migrations/2016_03_09_203143_add_page_revision_types.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2016_03_13_082138_add_page_drafts.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2016_03_25_123157_add_markdown_support.php method up (line 12) | public function up(): void method down (line 26) | public function down(): void FILE: database/migrations/2016_04_09_100730_add_view_permissions_to_roles.php method up (line 12) | public function up(): void method down (line 41) | public function down(): void FILE: database/migrations/2016_04_20_192649_create_joint_permissions_table.php method up (line 15) | public function up(): void method down (line 84) | public function down(): void FILE: database/migrations/2016_05_06_185215_create_tags_table.php method up (line 12) | public function up(): void method down (line 33) | public function down(): void FILE: database/migrations/2016_07_07_181521_add_summary_to_page_revisions.php method up (line 11) | public function up(): void method down (line 21) | public function down(): void FILE: database/migrations/2016_09_29_101449_remove_hidden_roles.php method up (line 14) | public function up(): void method down (line 49) | public function down(): void FILE: database/migrations/2016_10_09_142037_create_attachments_table.php method up (line 14) | public function up(): void method down (line 56) | public function down(): void FILE: database/migrations/2017_01_21_163556_create_cache_table.php method up (line 12) | public function up(): void method down (line 24) | public function down(): void FILE: database/migrations/2017_01_21_163602_create_sessions_table.php method up (line 12) | public function up(): void method down (line 27) | public function down(): void FILE: database/migrations/2017_03_19_091553_create_search_index_table.php method up (line 13) | public function up(): void method down (line 53) | public function down(): void FILE: database/migrations/2017_04_20_185112_add_revision_counts.php method up (line 13) | public function up(): void method down (line 32) | public function down(): void FILE: database/migrations/2017_07_02_152834_update_db_encoding_to_ut8mb4.php method up (line 10) | public function up() method down (line 20) | public function down() FILE: database/migrations/2017_08_01_130541_create_comments_table.php method up (line 14) | public function up(): void method down (line 54) | public function down(): void FILE: database/migrations/2017_08_29_102650_add_cover_image_display.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2018_07_15_173514_add_role_external_auth_id.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2018_08_04_115700_create_bookshelves_table.php method up (line 14) | public function up(): void method down (line 106) | public function down(): void FILE: database/migrations/2019_07_07_112515_add_template_support.php method up (line 14) | public function up(): void method down (line 38) | public function down(): void FILE: database/migrations/2019_08_17_140214_add_user_invites_table.php method up (line 12) | public function up(): void method down (line 25) | public function down(): void FILE: database/migrations/2019_12_29_120917_add_api_auth.php method up (line 14) | public function up(): void method down (line 45) | public function down(): void FILE: database/migrations/2020_08_04_111754_drop_joint_permissions_id.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2020_08_04_131052_remove_role_name_field.php method up (line 13) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2020_09_19_094251_add_activity_indexes.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2020_09_27_210059_add_entity_soft_deletes.php method up (line 12) | public function up(): void method down (line 31) | public function down(): void FILE: database/migrations/2020_09_27_210528_create_deletions_table.php method up (line 12) | public function up(): void method down (line 30) | public function down(): void FILE: database/migrations/2020_11_07_232321_simplify_activities_table.php method up (line 13) | public function up(): void method down (line 34) | public function down(): void FILE: database/migrations/2020_12_30_173528_add_owned_by_field_to_entities.php method up (line 13) | public function up(): void method down (line 32) | public function down(): void FILE: database/migrations/2021_01_30_225441_add_settings_type_column.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2021_03_08_215138_add_user_slug.php method up (line 14) | public function up(): void method down (line 41) | public function down(): void FILE: database/migrations/2021_05_15_173110_create_favourites_table.php method up (line 12) | public function up(): void method down (line 28) | public function down(): void FILE: database/migrations/2021_06_30_173111_create_mfa_values_table.php method up (line 12) | public function up(): void method down (line 26) | public function down(): void FILE: database/migrations/2021_07_03_085038_add_mfa_enforced_to_roles_table.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2021_08_28_161743_add_export_role_permission.php method up (line 12) | public function up(): void method down (line 37) | public function down(): void FILE: database/migrations/2021_09_26_044614_add_activities_ip_column.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2021_11_26_070438_add_index_for_user_ip.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2021_12_07_111343_create_webhooks_table.php method up (line 12) | public function up(): void method down (line 39) | public function down(): void FILE: database/migrations/2021_12_13_152024_create_jobs_table.php method up (line 12) | public function up(): void method down (line 28) | public function down(): void FILE: database/migrations/2021_12_13_152120_create_failed_jobs_table.php method up (line 12) | public function up(): void method down (line 28) | public function down(): void FILE: database/migrations/2022_01_03_154041_add_webhooks_timeout_error_columns.php method up (line 12) | public function up(): void method down (line 25) | public function down(): void FILE: database/migrations/2022_04_17_101741_add_editor_change_field_and_permission.php method up (line 14) | public function up(): void method down (line 48) | public function down(): void FILE: database/migrations/2022_04_25_140741_update_polymorphic_types.php method up (line 36) | public function up(): void method down (line 50) | public function down(): void FILE: database/migrations/2022_07_16_170051_drop_joint_permission_type.php method up (line 13) | public function up(): void method down (line 29) | public function down(): void FILE: database/migrations/2022_08_17_092941_create_references_table.php method up (line 12) | public function up(): void method down (line 26) | public function down(): void FILE: database/migrations/2022_09_02_082910_fix_shelf_cover_image_types.php method up (line 11) | public function up(): void method down (line 34) | public function down(): void FILE: database/migrations/2022_10_07_091406_flatten_entity_permissions_table.php method up (line 14) | public function up(): void method down (line 65) | public function down(): void FILE: database/migrations/2022_10_08_104202_drop_entity_restricted_field.php method up (line 15) | public function up(): void method down (line 63) | public function down(): void FILE: database/migrations/2023_01_24_104625_refactor_joint_permissions_storage.php method up (line 14) | public function up(): void method down (line 33) | public function down(): void FILE: database/migrations/2023_01_28_141230_copy_color_settings_for_dark_mode.php method up (line 11) | public function up(): void method down (line 47) | public function down(): void FILE: database/migrations/2023_02_20_093655_increase_attachments_path_length.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2023_02_23_200227_add_updated_at_index_to_pages.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2023_06_10_071823_remove_guest_user_secondary_roles.php method up (line 11) | public function up(): void method down (line 38) | public function down() FILE: database/migrations/2023_06_25_181952_remove_bookshelf_create_entity_permissions.php method up (line 11) | public function up() method down (line 22) | public function down() FILE: database/migrations/2023_07_25_124945_add_receive_notifications_role_permissions.php method up (line 12) | public function up(): void method down (line 32) | public function down(): void FILE: database/migrations/2023_07_31_104430_create_watches_table.php method up (line 12) | public function up(): void method down (line 29) | public function down(): void FILE: database/migrations/2023_08_21_174248_increase_cache_size.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2023_12_02_104541_add_default_template_to_books.php class AddDefaultTemplateToBooks (line 7) | class AddDefaultTemplateToBooks extends Migration method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2023_12_17_140913_add_description_html_to_entities.php method up (line 12) | public function up(): void method down (line 24) | public function down(): void FILE: database/migrations/2024_01_01_104542_add_default_template_to_chapters.php class AddDefaultTemplateToChapters (line 7) | class AddDefaultTemplateToChapters extends Migration method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2024_02_04_141358_add_views_updated_index.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2024_05_04_154409_rename_activity_relation_columns.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2024_09_29_140340_ensure_editor_value_set.php method up (line 11) | public function up(): void method down (line 44) | public function down(): void FILE: database/migrations/2024_10_29_114420_add_import_role_permission.php method up (line 12) | public function up(): void method down (line 48) | public function down(): void FILE: database/migrations/2024_11_02_160700_create_imports_table.php method up (line 12) | public function up(): void method down (line 29) | public function down(): void FILE: database/migrations/2024_11_27_171039_add_instance_id_setting.php method up (line 12) | public function up(): void method down (line 26) | public function down(): void FILE: database/migrations/2025_01_29_180933_create_sort_rules_table.php method up (line 12) | public function up(): void method down (line 25) | public function down(): void FILE: database/migrations/2025_02_05_150842_add_sort_rule_id_to_books.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/migrations/2025_04_18_215145_add_content_refs_and_archived_to_comments.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2025_09_02_111542_remove_unused_columns.php method up (line 12) | public function up(): void method down (line 27) | public function down(): void FILE: database/migrations/2025_09_15_132850_create_entities_table.php method up (line 12) | public function up(): void method down (line 65) | public function down(): void FILE: database/migrations/2025_09_15_134701_migrate_entity_data.php method up (line 10) | public function up(): void method down (line 85) | public function down(): void FILE: database/migrations/2025_09_15_134751_update_entity_relation_columns.php method up (line 40) | public function up(): void method down (line 92) | public function down(): void FILE: database/migrations/2025_09_15_134813_drop_old_entity_tables.php method up (line 13) | public function up(): void method down (line 24) | public function down(): void FILE: database/migrations/2025_10_18_163331_clean_user_id_references.php method up (line 35) | public function up(): void method down (line 62) | public function down(): void FILE: database/migrations/2025_10_22_134507_update_comments_relation_field_names.php method up (line 12) | public function up(): void method down (line 23) | public function down(): void FILE: database/migrations/2025_11_23_161812_create_slug_history_table.php method up (line 13) | public function up(): void method down (line 47) | public function down(): void FILE: database/migrations/2025_12_15_140219_create_mention_history_table.php method up (line 12) | public function up(): void method down (line 27) | public function down(): void FILE: database/migrations/2025_12_19_103417_add_views_viewable_type_index.php method up (line 12) | public function up(): void method down (line 22) | public function down(): void FILE: database/seeders/DatabaseSeeder.php class DatabaseSeeder (line 8) | class DatabaseSeeder extends Seeder method run (line 15) | public function run() FILE: database/seeders/DummyContentSeeder.php class DummyContentSeeder (line 21) | class DummyContentSeeder extends Seeder method run (line 26) | public function run(): void method saveManyOnRelation (line 90) | protected function saveManyOnRelation(Collection $entities, HasMany $r... FILE: database/seeders/LargeContentSeeder.php class LargeContentSeeder (line 15) | class LargeContentSeeder extends Seeder method run (line 22) | public function run() FILE: dev/build/livereload.js function listen (line 7) | function listen() { FILE: dev/build/svg-blank-transform.js method process (line 5) | process() { method getCacheKey (line 10) | getCacheKey() { FILE: dev/licensing/gen-licenses-shared.php function findLicenseFile (line 7) | function findLicenseFile(string $packageName, string $packagePath): string function findCopyright (line 35) | function findCopyright(string $licenseFile): string function obfuscateEmail (line 51) | function obfuscateEmail(array $matches): string function warn (line 56) | function warn(string $text): void function getWarnings (line 62) | function getWarnings(): array FILE: public/libs/tinymce/tinymce.d.ts type StringPathBookmark (line 1) | interface StringPathBookmark { type RangeBookmark (line 6) | interface RangeBookmark { type IdBookmark (line 10) | interface IdBookmark { type IndexBookmark (line 15) | interface IndexBookmark { type PathBookmark (line 19) | interface PathBookmark { type Bookmark (line 25) | type Bookmark = StringPathBookmark | RangeBookmark | IdBookmark | IndexB... type NormalizedEvent (line 26) | type NormalizedEvent = E & { type MappedEvent (line 36) | type MappedEvent = K extends keyof T ? T... type NativeEventMap (line 37) | interface NativeEventMap { type EditorEvent (line 79) | type EditorEvent = NormalizedEvent; type EventDispatcherSettings (line 80) | interface EventDispatcherSettings { type EventDispatcherConstructor (line 85) | interface EventDispatcherConstructor { class EventDispatcher (line 90) | class EventDispatcher { type UndoLevelType (line 104) | type UndoLevelType = 'fragmented' | 'complete'; type BaseUndoLevel (line 105) | interface BaseUndoLevel { type FragmentedUndoLevel (line 110) | interface FragmentedUndoLevel extends BaseUndoLevel { type CompleteUndoLevel (line 115) | interface CompleteUndoLevel extends BaseUndoLevel { type NewUndoLevel (line 120) | type NewUndoLevel = CompleteUndoLevel | FragmentedUndoLevel; type UndoLevel (line 121) | type UndoLevel = NewUndoLevel & { type UndoManager (line 124) | interface UndoManager { type SchemaType (line 140) | type SchemaType = 'html4' | 'html5' | 'html5-strict'; type ElementSettings (line 141) | interface ElementSettings { type SchemaSettings (line 154) | interface SchemaSettings extends ElementSettings { type Attribute (line 167) | interface Attribute { type DefaultAttribute (line 173) | interface DefaultAttribute { type AttributePattern (line 177) | interface AttributePattern extends Attribute { type ElementRule (line 180) | interface ElementRule { type SchemaElement (line 192) | interface SchemaElement extends ElementRule { type SchemaMap (line 197) | interface SchemaMap { type SchemaRegExpMap (line 200) | interface SchemaRegExpMap { type Schema (line 203) | interface Schema { type Attributes$1 (line 233) | type Attributes$1 = Array<{ type AstNodeConstructor (line 239) | interface AstNodeConstructor { class AstNode (line 244) | class AstNode { type Content (line 273) | type Content = string | AstNode; type ContentFormat (line 274) | type ContentFormat = 'raw' | 'text' | 'html' | 'tree'; type GetContentArgs (line 275) | interface GetContentArgs { type SetContentArgs (line 284) | interface SetContentArgs { type GetSelectionContentArgs (line 295) | interface GetSelectionContentArgs extends GetContentArgs { type SetSelectionContentArgs (line 299) | interface SetSelectionContentArgs extends SetContentArgs { type BlobInfoData (line 303) | interface BlobInfoData { type BlobInfo (line 312) | interface BlobInfo { type BlobCache (line 321) | interface BlobCache { type BlobInfoImagePair (line 334) | interface BlobInfoImagePair { class NodeChange (line 338) | class NodeChange { type SelectionOverrides (line 345) | interface SelectionOverrides { type Quirks (line 351) | interface Quirks { type DecoratorData (line 355) | type DecoratorData = Record; type Decorator (line 356) | type Decorator = (uid: string, data: DecoratorData) => { type AnnotationListener (line 360) | type AnnotationListener = (state: boolean, name: string, data?: { type AnnotationListenerApi (line 364) | type AnnotationListenerApi = AnnotationListener; type AnnotatorSettings (line 365) | interface AnnotatorSettings { type Annotator (line 369) | interface Annotator { type GeomRect (line 377) | interface GeomRect { type Rect (line 383) | interface Rect { type NotificationManagerImpl (line 392) | interface NotificationManagerImpl { type NotificationSpec (line 397) | interface NotificationSpec { type NotificationApi (line 405) | interface NotificationApi { type NotificationManager (line 415) | interface NotificationManager { type UploadFailure (line 420) | interface UploadFailure { type ProgressFn (line 424) | type ProgressFn = (percent: number) => void; type UploadHandler (line 425) | type UploadHandler = (blobInfo: BlobInfo, progress: ProgressFn) => Promi... type UploadResult$2 (line 426) | interface UploadResult$2 { type RawPattern (line 432) | interface RawPattern { type InlineBasePattern (line 440) | interface InlineBasePattern { type InlineFormatPattern (line 444) | interface InlineFormatPattern extends InlineBasePattern { type InlineCmdPattern (line 448) | interface InlineCmdPattern extends InlineBasePattern { type InlinePattern (line 453) | type InlinePattern = InlineFormatPattern | InlineCmdPattern; type BlockBasePattern (line 454) | interface BlockBasePattern { type BlockFormatPattern (line 457) | interface BlockFormatPattern extends BlockBasePattern { type BlockCmdPattern (line 461) | interface BlockCmdPattern extends BlockBasePattern { type BlockPattern (line 466) | type BlockPattern = BlockFormatPattern | BlockCmdPattern; type Pattern (line 467) | type Pattern = InlinePattern | BlockPattern; type DynamicPatternContext (line 468) | interface DynamicPatternContext { type DynamicPatternsLookup (line 472) | type DynamicPatternsLookup = (ctx: DynamicPatternContext) => Pattern[]; type RawDynamicPatternsLookup (line 473) | type RawDynamicPatternsLookup = (ctx: DynamicPatternContext) => RawPatte... type AlertBannerSpec (line 474) | interface AlertBannerSpec { type ButtonSpec (line 481) | interface ButtonSpec { type FormComponentSpec (line 491) | interface FormComponentSpec { type FormComponentWithLabelSpec (line 495) | interface FormComponentWithLabelSpec extends FormComponentSpec { type CheckboxSpec (line 498) | interface CheckboxSpec extends FormComponentSpec { type CollectionSpec (line 503) | interface CollectionSpec extends FormComponentWithLabelSpec { type CollectionItem (line 506) | interface CollectionItem { type ColorInputSpec (line 511) | interface ColorInputSpec extends FormComponentWithLabelSpec { type ColorPickerSpec (line 515) | interface ColorPickerSpec extends FormComponentWithLabelSpec { type CustomEditorInit (line 518) | interface CustomEditorInit { type CustomEditorInitFn (line 523) | type CustomEditorInitFn = (elm: HTMLElement, settings: any) => Promise { type BaseToolbarButtonInstanceApi (line 633) | interface BaseToolbarButtonInstanceApi { type ToolbarButtonSpec (line 639) | interface ToolbarButtonSpec extends BaseToolbarButtonSpec { type InsertTableMenuItemSpec (line 738) | interface InsertTableMenuItemSpec extends BaseFancyMenuItemSpec<'insertt... type ColorSwatchMenuItemSpec (line 742) | interface ColorSwatchMenuItemSpec extends BaseFancyMenuItemSpec<'colorsw... type FancyMenuItemSpec (line 751) | type FancyMenuItemSpec = InsertTableMenuItemSpec | ColorSwatchMenuItemSpec; type MenuItemSpec (line 752) | interface MenuItemSpec extends CommonMenuItemSpec { type MenuItemInstanceApi (line 758) | interface MenuItemInstanceApi extends CommonMenuItemInstanceApi { type SeparatorMenuItemSpec (line 760) | interface SeparatorMenuItemSpec { type ToggleMenuItemSpec (line 764) | interface ToggleMenuItemSpec extends CommonMenuItemSpec { type ToggleMenuItemInstanceApi (line 771) | interface ToggleMenuItemInstanceApi extends CommonMenuItemInstanceApi { type NestedMenuItemContents (line 775) | type NestedMenuItemContents = string | MenuItemSpec | NestedMenuItemSpec... type NestedMenuItemSpec (line 776) | interface NestedMenuItemSpec extends CommonMenuItemSpec { type NestedMenuItemInstanceApi (line 782) | interface NestedMenuItemInstanceApi extends CommonMenuItemInstanceApi { type MenuButtonItemTypes (line 786) | type MenuButtonItemTypes = NestedMenuItemContents; type SuccessCallback$1 (line 787) | type SuccessCallback$1 = (menu: string | MenuButtonItemTypes[]) => void; type MenuButtonFetchContext (line 788) | interface MenuButtonFetchContext { type BaseMenuButtonSpec (line 791) | interface BaseMenuButtonSpec { type BaseMenuButtonInstanceApi (line 801) | interface BaseMenuButtonInstanceApi { type ToolbarMenuButtonSpec (line 809) | interface ToolbarMenuButtonSpec extends BaseMenuButtonSpec { type ToolbarMenuButtonInstanceApi (line 813) | interface ToolbarMenuButtonInstanceApi extends BaseMenuButtonInstanceApi { type ToolbarSplitButtonItemTypes (line 815) | type ToolbarSplitButtonItemTypes = ChoiceMenuItemSpec | SeparatorMenuIte... type SuccessCallback (line 816) | type SuccessCallback = (menu: ToolbarSplitButtonItemTypes[]) => void; type SelectPredicate (line 817) | type SelectPredicate = (value: string) => boolean; type PresetTypes (line 818) | type PresetTypes = 'color' | 'normal' | 'listpreview'; type ColumnTypes$1 (line 819) | type ColumnTypes$1 = number | 'auto'; type ToolbarSplitButtonSpec (line 820) | interface ToolbarSplitButtonSpec { type ToolbarSplitButtonInstanceApi (line 833) | interface ToolbarSplitButtonInstanceApi { type BaseToolbarToggleButtonSpec (line 843) | interface BaseToolbarToggleButtonSpec; type DialogInstanceApi (line 941) | interface DialogInstanceApi { type DialogActionDetails (line 953) | interface DialogActionDetails { type DialogChangeDetails (line 957) | interface DialogChangeDetails { type DialogTabChangeDetails (line 960) | interface DialogTabChangeDetails { type DialogActionHandler (line 964) | type DialogActionHandler = (api: DialogInstanceApi... type DialogChangeHandler (line 965) | type DialogChangeHandler = (api: DialogInstanceApi... type DialogSubmitHandler (line 966) | type DialogSubmitHandler = (api: DialogInstanceApi... type DialogCloseHandler (line 967) | type DialogCloseHandler = () => void; type DialogCancelHandler (line 968) | type DialogCancelHandler = (api: DialogInstanceApi... type DialogTabChangeHandler (line 969) | type DialogTabChangeHandler = (api: DialogInstance... type DialogSize (line 970) | type DialogSize = 'normal' | 'medium' | 'large'; type DialogSpec (line 971) | interface DialogSpec { type UrlDialogInstanceApi (line 984) | interface UrlDialogInstanceApi { type UrlDialogActionDetails (line 990) | interface UrlDialogActionDetails { type UrlDialogMessage (line 994) | interface UrlDialogMessage { type UrlDialogActionHandler (line 998) | type UrlDialogActionHandler = (api: UrlDialogInstanceApi, actions: UrlDi... type UrlDialogCloseHandler (line 999) | type UrlDialogCloseHandler = () => void; type UrlDialogCancelHandler (line 1000) | type UrlDialogCancelHandler = (api: UrlDialogInstanceApi) => void; type UrlDialogMessageHandler (line 1001) | type UrlDialogMessageHandler = (api: UrlDialogInstanceApi, message: UrlD... type UrlDialogFooterButtonSpec (line 1002) | interface UrlDialogFooterButtonSpec extends DialogFooterNormalButtonSpec { type UrlDialogSpec (line 1005) | interface UrlDialogSpec { type ColumnTypes (line 1016) | type ColumnTypes = number | 'auto'; type SeparatorItemSpec (line 1017) | type SeparatorItemSpec = SeparatorMenuItemSpec; type AutocompleterItemSpec (line 1018) | interface AutocompleterItemSpec { type AutocompleterContents (line 1025) | type AutocompleterContents = SeparatorItemSpec | AutocompleterItemSpec |... type AutocompleterSpec (line 1026) | interface AutocompleterSpec { type AutocompleterInstanceApi (line 1038) | interface AutocompleterInstanceApi { type ContextPosition (line 1042) | type ContextPosition = 'node' | 'selection' | 'line'; type ContextScope (line 1043) | type ContextScope = 'node' | 'editor'; type ContextBarSpec (line 1044) | interface ContextBarSpec { type ContextFormLaunchButtonApi (line 1049) | interface ContextFormLaunchButtonApi extends BaseToolbarButtonSpec = DialogSpec; type PublicDialog_d_DialogInstanceApi (line 1099) | type PublicDialog_d_DialogInstanceApi = DialogInst... type PublicDialog_d_DialogFooterButtonSpec (line 1100) | type PublicDialog_d_DialogFooterButtonSpec = DialogFooterButtonSpec; type PublicDialog_d_DialogActionDetails (line 1101) | type PublicDialog_d_DialogActionDetails = DialogActionDetails; type PublicDialog_d_DialogChangeDetails (line 1102) | type PublicDialog_d_DialogChangeDetails = DialogChangeDetails; type PublicDialog_d_DialogTabChangeDetails (line 1103) | type PublicDialog_d_DialogTabChangeDetails = DialogTabChangeDetails; type PublicDialog_d_DropZoneSpec (line 1104) | type PublicDialog_d_DropZoneSpec = DropZoneSpec; type PublicDialog_d_GridSpec (line 1105) | type PublicDialog_d_GridSpec = GridSpec; type PublicDialog_d_HtmlPanelSpec (line 1106) | type PublicDialog_d_HtmlPanelSpec = HtmlPanelSpec; type PublicDialog_d_IframeSpec (line 1107) | type PublicDialog_d_IframeSpec = IframeSpec; type PublicDialog_d_ImagePreviewSpec (line 1108) | type PublicDialog_d_ImagePreviewSpec = ImagePreviewSpec; type PublicDialog_d_InputSpec (line 1109) | type PublicDialog_d_InputSpec = InputSpec; type PublicDialog_d_LabelSpec (line 1110) | type PublicDialog_d_LabelSpec = LabelSpec; type PublicDialog_d_ListBoxSpec (line 1111) | type PublicDialog_d_ListBoxSpec = ListBoxSpec; type PublicDialog_d_ListBoxItemSpec (line 1112) | type PublicDialog_d_ListBoxItemSpec = ListBoxItemSpec; type PublicDialog_d_ListBoxNestedItemSpec (line 1113) | type PublicDialog_d_ListBoxNestedItemSpec = ListBoxNestedItemSpec; type PublicDialog_d_ListBoxSingleItemSpec (line 1114) | type PublicDialog_d_ListBoxSingleItemSpec = ListBoxSingleItemSpec; type PublicDialog_d_PanelSpec (line 1115) | type PublicDialog_d_PanelSpec = PanelSpec; type PublicDialog_d_SelectBoxSpec (line 1116) | type PublicDialog_d_SelectBoxSpec = SelectBoxSpec; type PublicDialog_d_SelectBoxItemSpec (line 1117) | type PublicDialog_d_SelectBoxItemSpec = SelectBoxItemSpec; type PublicDialog_d_SizeInputSpec (line 1118) | type PublicDialog_d_SizeInputSpec = SizeInputSpec; type PublicDialog_d_SliderSpec (line 1119) | type PublicDialog_d_SliderSpec = SliderSpec; type PublicDialog_d_TableSpec (line 1120) | type PublicDialog_d_TableSpec = TableSpec; type PublicDialog_d_TabSpec (line 1121) | type PublicDialog_d_TabSpec = TabSpec; type PublicDialog_d_TabPanelSpec (line 1122) | type PublicDialog_d_TabPanelSpec = TabPanelSpec; type PublicDialog_d_TextAreaSpec (line 1123) | type PublicDialog_d_TextAreaSpec = TextAreaSpec; type PublicDialog_d_TreeSpec (line 1124) | type PublicDialog_d_TreeSpec = TreeSpec; type PublicDialog_d_TreeItemSpec (line 1125) | type PublicDialog_d_TreeItemSpec = TreeItemSpec; type PublicDialog_d_UrlInputData (line 1126) | type PublicDialog_d_UrlInputData = UrlInputData; type PublicDialog_d_UrlInputSpec (line 1127) | type PublicDialog_d_UrlInputSpec = UrlInputSpec; type PublicDialog_d_UrlDialogSpec (line 1128) | type PublicDialog_d_UrlDialogSpec = UrlDialogSpec; type PublicDialog_d_UrlDialogFooterButtonSpec (line 1129) | type PublicDialog_d_UrlDialogFooterButtonSpec = UrlDialogFooterButtonSpec; type PublicDialog_d_UrlDialogInstanceApi (line 1130) | type PublicDialog_d_UrlDialogInstanceApi = UrlDialogInstanceApi; type PublicDialog_d_UrlDialogActionDetails (line 1131) | type PublicDialog_d_UrlDialogActionDetails = UrlDialogActionDetails; type PublicDialog_d_UrlDialogMessage (line 1132) | type PublicDialog_d_UrlDialogMessage = UrlDialogMessage; type PublicInlineContent_d_AutocompleterSpec (line 1136) | type PublicInlineContent_d_AutocompleterSpec = AutocompleterSpec; type PublicInlineContent_d_AutocompleterItemSpec (line 1137) | type PublicInlineContent_d_AutocompleterItemSpec = AutocompleterItemSpec; type PublicInlineContent_d_AutocompleterContents (line 1138) | type PublicInlineContent_d_AutocompleterContents = AutocompleterContents; type PublicInlineContent_d_AutocompleterInstanceApi (line 1139) | type PublicInlineContent_d_AutocompleterInstanceApi = AutocompleterInsta... type PublicInlineContent_d_ContextPosition (line 1140) | type PublicInlineContent_d_ContextPosition = ContextPosition; type PublicInlineContent_d_ContextScope (line 1141) | type PublicInlineContent_d_ContextScope = ContextScope; type PublicInlineContent_d_ContextFormSpec (line 1142) | type PublicInlineContent_d_ContextFormSpec = ContextFormSpec; type PublicInlineContent_d_ContextFormInstanceApi (line 1143) | type PublicInlineContent_d_ContextFormInstanceApi = ContextFormInstanceApi; type PublicInlineContent_d_ContextFormButtonSpec (line 1144) | type PublicInlineContent_d_ContextFormButtonSpec = ContextFormButtonSpec; type PublicInlineContent_d_ContextFormButtonInstanceApi (line 1145) | type PublicInlineContent_d_ContextFormButtonInstanceApi = ContextFormBut... type PublicInlineContent_d_ContextFormToggleButtonSpec (line 1146) | type PublicInlineContent_d_ContextFormToggleButtonSpec = ContextFormTogg... type PublicInlineContent_d_ContextFormToggleButtonInstanceApi (line 1147) | type PublicInlineContent_d_ContextFormToggleButtonInstanceApi = ContextF... type PublicInlineContent_d_ContextToolbarSpec (line 1148) | type PublicInlineContent_d_ContextToolbarSpec = ContextToolbarSpec; type PublicInlineContent_d_SeparatorItemSpec (line 1149) | type PublicInlineContent_d_SeparatorItemSpec = SeparatorItemSpec; type PublicMenu_d_MenuItemSpec (line 1153) | type PublicMenu_d_MenuItemSpec = MenuItemSpec; type PublicMenu_d_MenuItemInstanceApi (line 1154) | type PublicMenu_d_MenuItemInstanceApi = MenuItemInstanceApi; type PublicMenu_d_NestedMenuItemContents (line 1155) | type PublicMenu_d_NestedMenuItemContents = NestedMenuItemContents; type PublicMenu_d_NestedMenuItemSpec (line 1156) | type PublicMenu_d_NestedMenuItemSpec = NestedMenuItemSpec; type PublicMenu_d_NestedMenuItemInstanceApi (line 1157) | type PublicMenu_d_NestedMenuItemInstanceApi = NestedMenuItemInstanceApi; type PublicMenu_d_FancyMenuItemSpec (line 1158) | type PublicMenu_d_FancyMenuItemSpec = FancyMenuItemSpec; type PublicMenu_d_ColorSwatchMenuItemSpec (line 1159) | type PublicMenu_d_ColorSwatchMenuItemSpec = ColorSwatchMenuItemSpec; type PublicMenu_d_InsertTableMenuItemSpec (line 1160) | type PublicMenu_d_InsertTableMenuItemSpec = InsertTableMenuItemSpec; type PublicMenu_d_ToggleMenuItemSpec (line 1161) | type PublicMenu_d_ToggleMenuItemSpec = ToggleMenuItemSpec; type PublicMenu_d_ToggleMenuItemInstanceApi (line 1162) | type PublicMenu_d_ToggleMenuItemInstanceApi = ToggleMenuItemInstanceApi; type PublicMenu_d_ChoiceMenuItemSpec (line 1163) | type PublicMenu_d_ChoiceMenuItemSpec = ChoiceMenuItemSpec; type PublicMenu_d_ChoiceMenuItemInstanceApi (line 1164) | type PublicMenu_d_ChoiceMenuItemInstanceApi = ChoiceMenuItemInstanceApi; type PublicMenu_d_SeparatorMenuItemSpec (line 1165) | type PublicMenu_d_SeparatorMenuItemSpec = SeparatorMenuItemSpec; type PublicMenu_d_ContextMenuApi (line 1166) | type PublicMenu_d_ContextMenuApi = ContextMenuApi; type PublicMenu_d_ContextMenuContents (line 1167) | type PublicMenu_d_ContextMenuContents = ContextMenuContents; type PublicMenu_d_ContextMenuItem (line 1168) | type PublicMenu_d_ContextMenuItem = ContextMenuItem; type PublicMenu_d_ContextSubMenu (line 1169) | type PublicMenu_d_ContextSubMenu = ContextSubMenu; type PublicMenu_d_CardMenuItemSpec (line 1170) | type PublicMenu_d_CardMenuItemSpec = CardMenuItemSpec; type PublicMenu_d_CardMenuItemInstanceApi (line 1171) | type PublicMenu_d_CardMenuItemInstanceApi = CardMenuItemInstanceApi; type PublicMenu_d_CardItemSpec (line 1172) | type PublicMenu_d_CardItemSpec = CardItemSpec; type PublicMenu_d_CardContainerSpec (line 1173) | type PublicMenu_d_CardContainerSpec = CardContainerSpec; type PublicMenu_d_CardImageSpec (line 1174) | type PublicMenu_d_CardImageSpec = CardImageSpec; type PublicMenu_d_CardTextSpec (line 1175) | type PublicMenu_d_CardTextSpec = CardTextSpec; type SidebarInstanceApi (line 1179) | interface SidebarInstanceApi { type SidebarSpec (line 1182) | interface SidebarSpec { type PublicSidebar_d_SidebarSpec (line 1189) | type PublicSidebar_d_SidebarSpec = SidebarSpec; type PublicSidebar_d_SidebarInstanceApi (line 1190) | type PublicSidebar_d_SidebarInstanceApi = SidebarInstanceApi; type PublicToolbar_d_ToolbarButtonSpec (line 1194) | type PublicToolbar_d_ToolbarButtonSpec = ToolbarButtonSpec; type PublicToolbar_d_ToolbarButtonInstanceApi (line 1195) | type PublicToolbar_d_ToolbarButtonInstanceApi = ToolbarButtonInstanceApi; type PublicToolbar_d_ToolbarSplitButtonSpec (line 1196) | type PublicToolbar_d_ToolbarSplitButtonSpec = ToolbarSplitButtonSpec; type PublicToolbar_d_ToolbarSplitButtonInstanceApi (line 1197) | type PublicToolbar_d_ToolbarSplitButtonInstanceApi = ToolbarSplitButtonI... type PublicToolbar_d_ToolbarMenuButtonSpec (line 1198) | type PublicToolbar_d_ToolbarMenuButtonSpec = ToolbarMenuButtonSpec; type PublicToolbar_d_ToolbarMenuButtonInstanceApi (line 1199) | type PublicToolbar_d_ToolbarMenuButtonInstanceApi = ToolbarMenuButtonIns... type PublicToolbar_d_ToolbarToggleButtonSpec (line 1200) | type PublicToolbar_d_ToolbarToggleButtonSpec = ToolbarToggleButtonSpec; type PublicToolbar_d_ToolbarToggleButtonInstanceApi (line 1201) | type PublicToolbar_d_ToolbarToggleButtonInstanceApi = ToolbarToggleButto... type PublicToolbar_d_GroupToolbarButtonSpec (line 1202) | type PublicToolbar_d_GroupToolbarButtonSpec = GroupToolbarButtonSpec; type PublicToolbar_d_GroupToolbarButtonInstanceApi (line 1203) | type PublicToolbar_d_GroupToolbarButtonInstanceApi = GroupToolbarButtonI... type ViewButtonApi (line 1207) | interface ViewButtonApi { type ViewToggleButtonApi (line 1210) | interface ViewToggleButtonApi extends ViewButtonApi { type BaseButtonSpec (line 1214) | interface BaseButtonSpec { type ViewNormalButtonSpec (line 1222) | interface ViewNormalButtonSpec extends BaseButtonSpec { type ViewToggleButtonSpec (line 1226) | interface ViewToggleButtonSpec extends BaseButtonSpec; type FormatAttrOrStyleValue (line 1296) | type FormatAttrOrStyleValue = string | ((vars?: FormatVars) => string | ... type FormatVars (line 1297) | type FormatVars = Record; type BaseFormat (line 1298) | interface BaseFormat { type Block (line 1314) | interface Block { type Inline (line 1319) | interface Inline { type Selector (line 1322) | interface Selector { type CommonFormat (line 1326) | interface CommonFormat extends BaseFormat { type BlockFormat (line 1336) | interface BlockFormat extends Block, CommonFormat { type InlineFormat (line 1338) | interface InlineFormat extends Inline, CommonFormat { type SelectorFormat (line 1340) | interface SelectorFormat extends Selector, CommonFormat { type CommonRemoveFormat (line 1342) | interface CommonRemoveFormat extends BaseFormat { type RemoveBlockFormat (line 1346) | interface RemoveBlockFormat extends Block, CommonRemoveFormat { type ParserArgs (line 1356) | interface ParserArgs { type ParserFilterCallback (line 1366) | type ParserFilterCallback = (nodes: AstNode[], name: string, args: Parse... type ParserFilter (line 1367) | interface ParserFilter extends Filter { type DomParserSettings (line 1369) | interface DomParserSettings { type DomParser (line 1393) | interface DomParser { type StyleSheetLoaderSettings (line 1403) | interface StyleSheetLoaderSettings { type StyleSheetLoader (line 1408) | interface StyleSheetLoader { type Registry (line 1418) | type Registry = Registry$1; type EditorUiApi (line 1419) | interface EditorUiApi { type EditorUi (line 1425) | interface EditorUi extends EditorUiApi { type Ui_d_Registry (line 1429) | type Ui_d_Registry = Registry; type Ui_d_EditorUiApi (line 1430) | type Ui_d_EditorUiApi = EditorUiApi; type Ui_d_EditorUi (line 1431) | type Ui_d_EditorUi = EditorUi; type WindowParams (line 1435) | interface WindowParams { type InstanceApi (line 1440) | type InstanceApi = UrlDialogInstanceApi | DialogIn... type WindowManagerImpl (line 1441) | interface WindowManagerImpl { type WindowManager (line 1448) | interface WindowManager { type ExecCommandEvent (line 1455) | interface ExecCommandEvent { type BeforeGetContentEvent (line 1460) | interface BeforeGetContentEvent extends GetContentArgs { type GetContentEvent (line 1463) | interface GetContentEvent extends BeforeGetContentEvent { type BeforeSetContentEvent (line 1466) | interface BeforeSetContentEvent extends SetContentArgs { type SetContentEvent (line 1470) | interface SetContentEvent extends BeforeSetContentEvent { type SaveContentEvent (line 1473) | interface SaveContentEvent extends GetContentEvent { type NewBlockEvent (line 1476) | interface NewBlockEvent { type NodeChangeEvent (line 1479) | interface NodeChangeEvent { type FormatEvent (line 1485) | interface FormatEvent { type ObjectResizeEvent (line 1490) | interface ObjectResizeEvent { type ObjectSelectedEvent (line 1496) | interface ObjectSelectedEvent { type ScrollIntoViewEvent (line 1500) | interface ScrollIntoViewEvent { type SetSelectionRangeEvent (line 1504) | interface SetSelectionRangeEvent { type ShowCaretEvent (line 1508) | interface ShowCaretEvent { type SwitchModeEvent (line 1513) | interface SwitchModeEvent { type ChangeEvent (line 1516) | interface ChangeEvent { type AddUndoEvent (line 1520) | interface AddUndoEvent extends ChangeEvent { type UndoRedoEvent (line 1523) | interface UndoRedoEvent { type WindowEvent (line 1526) | interface WindowEvent { type ProgressStateEvent (line 1529) | interface ProgressStateEvent { type AfterProgressStateEvent (line 1533) | interface AfterProgressStateEvent { type PlaceholderToggleEvent (line 1536) | interface PlaceholderToggleEvent { type LoadErrorEvent (line 1539) | interface LoadErrorEvent { type PreProcessEvent (line 1542) | interface PreProcessEvent extends ParserArgs { type PostProcessEvent (line 1545) | interface PostProcessEvent extends ParserArgs { type PastePlainTextToggleEvent (line 1548) | interface PastePlainTextToggleEvent { type PastePreProcessEvent (line 1551) | interface PastePreProcessEvent { type PastePostProcessEvent (line 1555) | interface PastePostProcessEvent { type EditableRootStateChangeEvent (line 1559) | interface EditableRootStateChangeEvent { type NewTableRowEvent (line 1562) | interface NewTableRowEvent { type NewTableCellEvent (line 1565) | interface NewTableCellEvent { type TableEventData (line 1568) | interface TableEventData { type TableModifiedEvent (line 1572) | interface TableModifiedEvent extends TableEventData { type BeforeOpenNotificationEvent (line 1575) | interface BeforeOpenNotificationEvent { type OpenNotificationEvent (line 1578) | interface OpenNotificationEvent { type EditorEventMap (line 1581) | interface EditorEventMap extends Omit { type EditorManagerEventMap (line 1678) | interface EditorManagerEventMap { type EventTypes_d_ExecCommandEvent (line 1689) | type EventTypes_d_ExecCommandEvent = ExecCommandEvent; type EventTypes_d_BeforeGetContentEvent (line 1690) | type EventTypes_d_BeforeGetContentEvent = BeforeGetContentEvent; type EventTypes_d_GetContentEvent (line 1691) | type EventTypes_d_GetContentEvent = GetContentEvent; type EventTypes_d_BeforeSetContentEvent (line 1692) | type EventTypes_d_BeforeSetContentEvent = BeforeSetContentEvent; type EventTypes_d_SetContentEvent (line 1693) | type EventTypes_d_SetContentEvent = SetContentEvent; type EventTypes_d_SaveContentEvent (line 1694) | type EventTypes_d_SaveContentEvent = SaveContentEvent; type EventTypes_d_NewBlockEvent (line 1695) | type EventTypes_d_NewBlockEvent = NewBlockEvent; type EventTypes_d_NodeChangeEvent (line 1696) | type EventTypes_d_NodeChangeEvent = NodeChangeEvent; type EventTypes_d_FormatEvent (line 1697) | type EventTypes_d_FormatEvent = FormatEvent; type EventTypes_d_ObjectResizeEvent (line 1698) | type EventTypes_d_ObjectResizeEvent = ObjectResizeEvent; type EventTypes_d_ObjectSelectedEvent (line 1699) | type EventTypes_d_ObjectSelectedEvent = ObjectSelectedEvent; type EventTypes_d_ScrollIntoViewEvent (line 1700) | type EventTypes_d_ScrollIntoViewEvent = ScrollIntoViewEvent; type EventTypes_d_SetSelectionRangeEvent (line 1701) | type EventTypes_d_SetSelectionRangeEvent = SetSelectionRangeEvent; type EventTypes_d_ShowCaretEvent (line 1702) | type EventTypes_d_ShowCaretEvent = ShowCaretEvent; type EventTypes_d_SwitchModeEvent (line 1703) | type EventTypes_d_SwitchModeEvent = SwitchModeEvent; type EventTypes_d_ChangeEvent (line 1704) | type EventTypes_d_ChangeEvent = ChangeEvent; type EventTypes_d_AddUndoEvent (line 1705) | type EventTypes_d_AddUndoEvent = AddUndoEvent; type EventTypes_d_UndoRedoEvent (line 1706) | type EventTypes_d_UndoRedoEvent = UndoRedoEvent; type EventTypes_d_WindowEvent (line 1707) | type EventTypes_d_WindowEvent = WindowEvent; type EventTypes_d_ProgressStateEvent (line 1708) | type EventTypes_d_ProgressStateEvent = ProgressStateEvent; type EventTypes_d_AfterProgressStateEvent (line 1709) | type EventTypes_d_AfterProgressStateEvent = AfterProgressStateEvent; type EventTypes_d_PlaceholderToggleEvent (line 1710) | type EventTypes_d_PlaceholderToggleEvent = PlaceholderToggleEvent; type EventTypes_d_LoadErrorEvent (line 1711) | type EventTypes_d_LoadErrorEvent = LoadErrorEvent; type EventTypes_d_PreProcessEvent (line 1712) | type EventTypes_d_PreProcessEvent = PreProcessEvent; type EventTypes_d_PostProcessEvent (line 1713) | type EventTypes_d_PostProcessEvent = PostProcessEvent; type EventTypes_d_PastePlainTextToggleEvent (line 1714) | type EventTypes_d_PastePlainTextToggleEvent = PastePlainTextToggleEvent; type EventTypes_d_PastePreProcessEvent (line 1715) | type EventTypes_d_PastePreProcessEvent = PastePreProcessEvent; type EventTypes_d_PastePostProcessEvent (line 1716) | type EventTypes_d_PastePostProcessEvent = PastePostProcessEvent; type EventTypes_d_EditableRootStateChangeEvent (line 1717) | type EventTypes_d_EditableRootStateChangeEvent = EditableRootStateChange... type EventTypes_d_NewTableRowEvent (line 1718) | type EventTypes_d_NewTableRowEvent = NewTableRowEvent; type EventTypes_d_NewTableCellEvent (line 1719) | type EventTypes_d_NewTableCellEvent = NewTableCellEvent; type EventTypes_d_TableEventData (line 1720) | type EventTypes_d_TableEventData = TableEventData; type EventTypes_d_TableModifiedEvent (line 1721) | type EventTypes_d_TableModifiedEvent = TableModifiedEvent; type EventTypes_d_BeforeOpenNotificationEvent (line 1722) | type EventTypes_d_BeforeOpenNotificationEvent = BeforeOpenNotificationEv... type EventTypes_d_OpenNotificationEvent (line 1723) | type EventTypes_d_OpenNotificationEvent = OpenNotificationEvent; type EventTypes_d_EditorEventMap (line 1724) | type EventTypes_d_EditorEventMap = EditorEventMap; type EventTypes_d_EditorManagerEventMap (line 1725) | type EventTypes_d_EditorManagerEventMap = EditorManagerEventMap; type Format_d_Formats (line 1729) | type Format_d_Formats = Formats; type Format_d_Format (line 1730) | type Format_d_Format = Format; type Format_d_ApplyFormat (line 1731) | type Format_d_ApplyFormat = ApplyFormat; type Format_d_BlockFormat (line 1732) | type Format_d_BlockFormat = BlockFormat; type Format_d_InlineFormat (line 1733) | type Format_d_InlineFormat = InlineFormat; type Format_d_SelectorFormat (line 1734) | type Format_d_SelectorFormat = SelectorFormat; type Format_d_RemoveFormat (line 1735) | type Format_d_RemoveFormat = RemoveFormat; type Format_d_RemoveBlockFormat (line 1736) | type Format_d_RemoveBlockFormat = RemoveBlockFormat; type Format_d_RemoveInlineFormat (line 1737) | type Format_d_RemoveInlineFormat = RemoveInlineFormat; type Format_d_RemoveSelectorFormat (line 1738) | type Format_d_RemoveSelectorFormat = RemoveSelectorFormat; type StyleFormat (line 1742) | type StyleFormat = BlockStyleFormat | InlineStyleFormat | SelectorStyleF... type AllowedFormat (line 1743) | type AllowedFormat = Separator | FormatReference | StyleFormat | NestedF... type Separator (line 1744) | interface Separator { type FormatReference (line 1747) | interface FormatReference { type NestedFormatting (line 1752) | interface NestedFormatting { type CommonStyleFormat (line 1756) | interface CommonStyleFormat { type BlockStyleFormat (line 1761) | interface BlockStyleFormat extends BlockFormat, CommonStyleFormat { type InlineStyleFormat (line 1763) | interface InlineStyleFormat extends InlineFormat, CommonStyleFormat { type SelectorStyleFormat (line 1765) | interface SelectorStyleFormat extends SelectorFormat, CommonStyleFormat { type EntityEncoding (line 1767) | type EntityEncoding = 'named' | 'numeric' | 'raw' | 'named,numeric' | 'n... type ContentLanguage (line 1768) | interface ContentLanguage { type ThemeInitFunc (line 1773) | type ThemeInitFunc = (editor: Editor, elm: HTMLElement) => { type SetupCallback (line 1780) | type SetupCallback = (editor: Editor) => void; type FilePickerCallback (line 1781) | type FilePickerCallback = (callback: (value: string, meta?: Record... type PastePostProcessFn (line 1791) | type PastePostProcessFn = (editor: Editor, args: PastePostProcessEvent) ... type URLConverter (line 1792) | type URLConverter = (url: string, name: string, elm?: string | Element) ... type URLConverterCallback (line 1793) | type URLConverterCallback = (url: string, node: Node | string | undefine... type ToolbarGroup (line 1794) | interface ToolbarGroup { type ToolbarMode (line 1798) | type ToolbarMode = 'floating' | 'sliding' | 'scrolling' | 'wrap'; type ToolbarLocation (line 1799) | type ToolbarLocation = 'top' | 'bottom' | 'auto'; type ForceHexColor (line 1800) | type ForceHexColor = 'always' | 'rgb_only' | 'off'; type BaseEditorOptions (line 1801) | interface BaseEditorOptions { type RawEditorOptions (line 2012) | interface RawEditorOptions extends BaseEditorOptions { type NormalizedEditorOptions (line 2017) | interface NormalizedEditorOptions extends BaseEditorOptions { type EditorOptions (line 2022) | interface EditorOptions extends NormalizedEditorOptions { type StyleMap (line 2107) | type StyleMap = Record; type StylesSettings (line 2108) | interface StylesSettings { type Styles (line 2115) | interface Styles { type EventUtilsCallback (line 2119) | type EventUtilsCallback = (event: EventUtilsEvent) => void | boolean; type EventUtilsEvent (line 2120) | type EventUtilsEvent = NormalizedEvent & { type Callback$1 (line 2123) | interface Callback$1 { type CallbackList (line 2127) | interface CallbackList extends Array> { type EventUtilsConstructor (line 2132) | interface EventUtilsConstructor { class EventUtils (line 2137) | class EventUtils { type SetAttribEvent (line 2157) | interface SetAttribEvent { type DOMUtilsSettings (line 2162) | interface DOMUtilsSettings { type Target (line 2176) | type Target = Node | Window; type RunArguments (line 2177) | type RunArguments = string | T | Array = EventUtilsCallback = T extends Array ? R[] : false | R; type DOMUtils (line 2186) | interface DOMUtils { type ClientRect (line 2319) | interface ClientRect { type BookmarkManager (line 2327) | interface BookmarkManager { type ControlSelection (line 2331) | interface ControlSelection { type WriterSettings (line 2338) | interface WriterSettings { type Attributes (line 2346) | type Attributes = Array<{ type Writer (line 2350) | interface Writer { type HtmlSerializerSettings (line 2361) | interface HtmlSerializerSettings extends WriterSettings { type HtmlSerializer (line 2365) | interface HtmlSerializer { type DomSerializerSettings (line 2368) | interface DomSerializerSettings extends DomParserSettings, WriterSetting... type DomSerializerImpl (line 2373) | interface DomSerializerImpl { type DomSerializer (line 2392) | interface DomSerializer extends DomSerializerImpl { type EditorSelection (line 2394) | interface EditorSelection { type EditorCommandCallback (line 2449) | type EditorCommandCallback = (this: S, ui: boolean, value: any) => void; type EditorCommandsCallback (line 2450) | type EditorCommandsCallback = (command: string, ui: boolean, value?: any... type Commands (line 2451) | interface Commands { type ExecCommandArgs (line 2456) | interface ExecCommandArgs { type EditorCommandsConstructor (line 2459) | interface EditorCommandsConstructor { class EditorCommands (line 2463) | class EditorCommands { type RawString (line 2480) | interface RawString { type Primitive (line 2483) | type Primitive = string | number | boolean | Record { type URISettings (line 2507) | interface URISettings { type URIConstructor (line 2510) | interface URIConstructor { type SafeUriOptions (line 2524) | interface SafeUriOptions { class URI (line 2529) | class URI { type EditorManager (line 2565) | interface EditorManager extends Observable { type EditorObservable (line 2594) | interface EditorObservable extends Observable { type ProcessorSuccess (line 2599) | interface ProcessorSuccess { type ProcessorError (line 2603) | interface ProcessorError { type SimpleProcessor (line 2607) | type SimpleProcessor = (value: unknown) => boolean; type Processor (line 2608) | type Processor = (value: unknown) => ProcessorSuccess | ProcessorE... type BuiltInOptionTypeMap (line 2609) | interface BuiltInOptionTypeMap { type BuiltInOptionType (line 2620) | type BuiltInOptionType = keyof BuiltInOptionTypeMap; type BaseOptionSpec (line 2621) | interface BaseOptionSpec { type BuiltInOptionSpec (line 2626) | interface BuiltInOptionSpec extends BaseOpt... type SimpleOptionSpec (line 2630) | interface SimpleOptionSpec extends BaseOptionSpec { type OptionSpec (line 2634) | interface OptionSpec extends BaseOptionSpec { type Options (line 2638) | interface Options { type UploadResult$1 (line 2654) | interface UploadResult$1 { type EditorUpload (line 2661) | interface EditorUpload { type FormatChangeCallback (line 2669) | type FormatChangeCallback = (state: boolean, data: { type FormatRegistry (line 2674) | interface FormatRegistry { type Formatter (line 2683) | interface Formatter extends FormatRegistry { type EditorMode (line 2697) | interface EditorMode { type EditorModeApi (line 2703) | interface EditorModeApi { type Model (line 2708) | interface Model { type ModelManager (line 2714) | type ModelManager = AddOnManager; type Plugin (line 2715) | interface Plugin { type PluginManager (line 2723) | type PluginManager = AddOnManager; type ShortcutsConstructor (line 2724) | interface ShortcutsConstructor { type CommandFunc (line 2728) | type CommandFunc = string | [ class Shortcuts (line 2733) | class Shortcuts { type RenderResult (line 2747) | interface RenderResult { type Theme (line 2752) | interface Theme { type ThemeManager (line 2762) | type ThemeManager = AddOnManager; type EditorConstructor (line 2763) | interface EditorConstructor { class Editor (line 2767) | class Editor implements EditorObservable { type UrlObject (line 2898) | interface UrlObject { type WaitState (line 2903) | type WaitState = 'added' | 'loaded'; type AddOnConstructor (line 2904) | type AddOnConstructor = (editor: Editor, url: string) => T; type AddOnManager (line 2905) | interface AddOnManager { type RangeUtils (line 2919) | interface RangeUtils { type ScriptLoaderSettings (line 2927) | interface ScriptLoaderSettings { type ScriptLoaderConstructor (line 2930) | interface ScriptLoaderConstructor { class ScriptLoader (line 2935) | class ScriptLoader { type TextProcessCallback (line 2954) | type TextProcessCallback = (node: Text, offset: number, text: string) =>... type Spot (line 2955) | interface Spot { type TextSeeker (line 2959) | interface TextSeeker { type DomTreeWalkerConstructor (line 2963) | interface DomTreeWalkerConstructor { class DomTreeWalker (line 2967) | class DomTreeWalker { type Version (line 2978) | interface Version { type Env (line 2982) | interface Env { type FakeClipboardItem (line 3021) | interface FakeClipboardItem { type FakeClipboard (line 3026) | interface FakeClipboard { type FocusManager (line 3032) | interface FocusManager { type EntitiesMap (line 3035) | interface EntitiesMap { type Entities (line 3038) | interface Entities { type IconPack (line 3046) | interface IconPack { type IconManager (line 3049) | interface IconManager { type Resource (line 3054) | interface Resource { type TextPatterns_d_Pattern (line 3061) | type TextPatterns_d_Pattern = Pattern; type TextPatterns_d_RawPattern (line 3062) | type TextPatterns_d_RawPattern = RawPattern; type TextPatterns_d_DynamicPatternsLookup (line 3063) | type TextPatterns_d_DynamicPatternsLookup = DynamicPatternsLookup; type TextPatterns_d_RawDynamicPatternsLookup (line 3064) | type TextPatterns_d_RawDynamicPatternsLookup = RawDynamicPatternsLookup; type TextPatterns_d_DynamicPatternContext (line 3065) | type TextPatterns_d_DynamicPatternContext = DynamicPatternContext; type TextPatterns_d_BlockCmdPattern (line 3066) | type TextPatterns_d_BlockCmdPattern = BlockCmdPattern; type TextPatterns_d_BlockPattern (line 3067) | type TextPatterns_d_BlockPattern = BlockPattern; type TextPatterns_d_BlockFormatPattern (line 3068) | type TextPatterns_d_BlockFormatPattern = BlockFormatPattern; type TextPatterns_d_InlineCmdPattern (line 3069) | type TextPatterns_d_InlineCmdPattern = InlineCmdPattern; type TextPatterns_d_InlinePattern (line 3070) | type TextPatterns_d_InlinePattern = InlinePattern; type TextPatterns_d_InlineFormatPattern (line 3071) | type TextPatterns_d_InlineFormatPattern = InlineFormatPattern; type Delay (line 3075) | interface Delay { type UploadResult (line 3079) | type UploadResult = UploadResult$2; type ImageUploader (line 3080) | interface ImageUploader { type ArrayCallback$1 (line 3083) | type ArrayCallback$1 = (this: any, x: T, i: number, xs: ArrayLike<... type ObjCallback$1 (line 3084) | type ObjCallback$1 = (this: any, value: T, key: string, obj: Recor... type ArrayCallback (line 3085) | type ArrayCallback = ArrayCallback$1; type ObjCallback (line 3086) | type ObjCallback = ObjCallback$1; type WalkCallback (line 3087) | type WalkCallback = (this: any, o: T, i: string, n: keyof T | undefin... type Tools (line 3088) | interface Tools { type KeyboardLikeEvent (line 3114) | interface KeyboardLikeEvent { type VK (line 3120) | interface VK { type DOMUtilsNamespace (line 3138) | interface DOMUtilsNamespace { type RangeUtilsNamespace (line 3143) | interface RangeUtilsNamespace { type AddOnManagerNamespace (line 3150) | interface AddOnManagerNamespace { type BookmarkManagerNamespace (line 3159) | interface BookmarkManagerNamespace { type TinyMCE (line 3163) | interface TinyMCE extends EditorManager { FILE: resources/js/code/index.mjs function addCopyIcon (line 12) | function addCopyIcon(editorView) { function getDirectionFromCodeBlock (line 45) | function getDirectionFromCodeBlock(codeElem) { function highlightElem (line 62) | function highlightElem(elem) { function highlightWithin (line 97) | function highlightWithin(parent) { function highlight (line 107) | function highlight() { function wysiwygView (line 123) | function wysiwygView(cmContainer, shadowRoot, content, language) { function popupEditor (line 143) | function popupEditor(elem, modeSuggestion) { function inlineEditor (line 167) | function inlineEditor(textArea, mode) { function markdownEditor (line 199) | function markdownEditor(elem, onChange, domEventHandlers, keyBindings) { FILE: resources/js/code/languages.js function getLanguageExtension (line 110) | function getLanguageExtension(langSuggestion, content) { FILE: resources/js/code/setups.js function common (line 16) | function common(parentEl) { function getDynamicActiveLineHighlighter (line 30) | function getDynamicActiveLineHighlighter() { function viewerExtensions (line 58) | function viewerExtensions(parentEl) { function editorExtensions (line 73) | function editorExtensions(parentEl) { FILE: resources/js/code/simple-editor-interface.js class SimpleEditorInterface (line 3) | class SimpleEditorInterface { method constructor (line 8) | constructor(editorView) { method getContent (line 16) | getContent() { method setContent (line 24) | setContent(content) { method focus (line 34) | focus() { method setMode (line 43) | setMode(mode, content = '') { FILE: resources/js/code/themes.js function getTheme (line 107) | function getTheme(viewParentEl) { FILE: resources/js/code/views.js function createView (line 14) | function createView(usageType, config) { function updateViewLanguage (line 45) | async function updateViewLanguage(ev, modeSuggestion, content) { FILE: resources/js/components/add-remove-rows.js class AddRemoveRows (line 10) | class AddRemoveRows extends Component { method setup (line 12) | setup() { method setupListeners (line 20) | setupListeners() { method add (line 30) | add() { method setClonedInputNames (line 46) | setClonedInputNames(clone) { FILE: resources/js/components/ajax-delete-row.ts class AjaxDeleteRow (line 4) | class AjaxDeleteRow extends Component { method setup (line 10) | setup() { method runDelete (line 18) | runDelete() { FILE: resources/js/components/ajax-form.js class AjaxForm (line 13) | class AjaxForm extends Component { method setup (line 15) | setup() { method setupListeners (line 30) | setupListeners() { method submitFakeForm (line 44) | submitFakeForm() { method submitRealForm (line 53) | submitRealForm(event) { method submit (line 59) | async submit(formData) { FILE: resources/js/components/api-nav.ts class ApiNav (line 3) | class ApiNav extends Component { method setup (line 8) | setup() { FILE: resources/js/components/attachments-list.js class AttachmentsList (line 8) | class AttachmentsList extends Component { method setup (line 10) | setup() { method setupListeners (line 17) | setupListeners() { method addOpenQueryToLinks (line 31) | addOpenQueryToLinks() { method removeOpenQueryFromLinks (line 40) | removeOpenQueryFromLinks() { FILE: resources/js/components/attachments.js class Attachments (line 4) | class Attachments extends Component { method setup (line 6) | setup() { method setupListeners (line 18) | setupListeners() { method showSection (line 49) | showSection(section) { method reloadList (line 61) | reloadList() { method updateOrder (line 69) | updateOrder(idOrder) { method startEdit (line 75) | async startEdit(id) { method stopEdit (line 84) | stopEdit() { FILE: resources/js/components/auto-submit.js class AutoSubmit (line 3) | class AutoSubmit extends Component { method setup (line 5) | setup() { FILE: resources/js/components/auto-suggest.js class AutoSuggest (line 11) | class AutoSuggest extends Component { method setup (line 13) | setup() { method setupListeners (line 25) | setupListeners() { method selectSuggestion (line 56) | selectSuggestion(value) { method requestSuggestions (line 65) | async requestSuggestions() { method getNameFilterIfNeeded (line 79) | getNameFilterIfNeeded() { method loadSuggestions (line 89) | async loadSuggestions(search, nameFilter = null) { method displaySuggestions (line 108) | displaySuggestions(suggestions) { method hideSuggestions (line 123) | hideSuggestions() { method hideSuggestionsIfFocusedLost (line 127) | hideSuggestionsIfFocusedLost(event) { FILE: resources/js/components/back-to-top.js class BackToTop (line 3) | class BackToTop extends Component { method setup (line 5) | setup() { method onPageScroll (line 20) | onPageScroll() { method scrollToTop (line 37) | scrollToTop() { FILE: resources/js/components/book-sort.js method name (line 7) | name(a, b) { method created (line 12) | created(a, b) { method updated (line 17) | updated(a, b) { method chaptersFirst (line 22) | chaptersFirst(a, b) { method chaptersLast (line 30) | chaptersLast(a, b) { method active (line 48) | active(elem, parent) { method run (line 51) | run(elem, parent) { method active (line 57) | active(elem, parent) { method run (line 60) | run(elem, parent) { method active (line 66) | active(elem, parent, book) { method run (line 69) | run(elem, parent, book) { method active (line 75) | active(elem, parent, book) { method run (line 78) | run(elem, parent, book) { method active (line 84) | active(elem, parent) { method run (line 87) | run(elem, parent) { method getNextChapter (line 91) | getNextChapter(elem, parent) { method active (line 99) | active(elem, parent) { method run (line 102) | run(elem, parent) { method getPrevChapter (line 106) | getPrevChapter(elem, parent) { method active (line 114) | active(elem, parent) { method run (line 117) | run(elem, parent, book) { method active (line 122) | active(elem, parent) { method run (line 125) | run(elem, parent, book) { method active (line 130) | active(elem, parent) { method run (line 133) | run(elem, parent) { method active (line 138) | active(elem, parent) { method run (line 141) | run(elem, parent) { class BookSort (line 147) | class BookSort extends Component { method setup (line 149) | setup() { method setupMoveActions (line 167) | setupMoveActions() { method setupSortPresets (line 183) | setupSortPresets() { method bookSelect (line 220) | bookSelect(entityInfo) { method setupBookSortable (line 240) | setupBookSortable(bookContainer) { method ensureNoNestedChapters (line 283) | ensureNoNestedChapters() { method updateMapInput (line 294) | updateMapInput() { method buildEntityMap (line 303) | buildEntityMap() { method addBookChildToMap (line 327) | addBookChildToMap(childElem, index, bookId, entityMap) { method runSortAction (line 357) | runSortAction(item, action) { method updateMoveActionState (line 371) | updateMoveActionState(item) { method updateMoveActionStateForAll (line 380) | updateMoveActionStateForAll() { FILE: resources/js/components/chapter-contents.js class ChapterContents (line 4) | class ChapterContents extends Component { method setup (line 6) | setup() { method open (line 14) | open() { method close (line 21) | close() { method click (line 28) | click(event) { FILE: resources/js/components/code-editor.js class CodeEditor (line 4) | class CodeEditor extends Component { method setup (line 25) | setup() { method setupListeners (line 41) | setupListeners() { method setupFavourites (line 67) | setupFavourites() { method setupFavouritesForButton (line 78) | setupFavouritesForButton(button) { method sortLanguageList (line 106) | sortLanguageList() { method save (line 125) | save() { method open (line 132) | async open(code, language, direction, saveCallback, cancelCallback) { method show (line 143) | async show() { method setDirection (line 160) | setDirection(direction) { method hide (line 169) | hide() { method getPopup (line 177) | getPopup() { method updateEditorMode (line 181) | async updateEditorMode(language) { method languageInputChange (line 185) | languageInputChange(language) { method loadHistory (line 199) | loadHistory() { method addHistory (line 209) | addHistory() { FILE: resources/js/components/code-highlighter.js class CodeHighlighter (line 3) | class CodeHighlighter extends Component { method setup (line 5) | setup() { FILE: resources/js/components/code-textarea.js class CodeTextarea (line 7) | class CodeTextarea extends Component { method setup (line 9) | async setup() { FILE: resources/js/components/collapsible.js class Collapsible (line 8) | class Collapsible extends Component { method setup (line 10) | setup() { method open (line 21) | open() { method close (line 27) | close() { method toggle (line 33) | toggle() { method openIfContainsError (line 41) | openIfContainsError() { FILE: resources/js/components/component.js class Component (line 1) | class Component { method setup (line 38) | setup() { method $emit (line 49) | $emit(eventName, data = {}) { FILE: resources/js/components/confirm-dialog.js class ConfirmDialog (line 9) | class ConfirmDialog extends Component { method setup (line 11) | setup() { method show (line 23) | show() { method getPopup (line 36) | getPopup() { method sendResult (line 43) | sendResult(result) { FILE: resources/js/components/custom-checkbox.js class CustomCheckbox (line 3) | class CustomCheckbox extends Component { method setup (line 5) | setup() { method onKeyDown (line 14) | onKeyDown(event) { method toggle (line 22) | toggle() { method stateChange (line 28) | stateChange() { FILE: resources/js/components/details-highlighter.js class DetailsHighlighter (line 3) | class DetailsHighlighter extends Component { method setup (line 5) | setup() { method onToggle (line 12) | onToggle() { FILE: resources/js/components/dropdown-search.js class DropdownSearch (line 5) | class DropdownSearch extends Component { method setup (line 7) | setup() { method onShow (line 22) | onShow() { method onSearch (line 26) | onSearch() { method runAjaxSearch (line 37) | runAjaxSearch(searchTerm) { method runLocalSearch (line 41) | runLocalSearch(searchTerm) { method loadList (line 50) | async loadList(searchTerm = '') { method getAjaxUrl (line 69) | getAjaxUrl(searchTerm = null) { method toggleLoading (line 78) | toggleLoading(show = false) { FILE: resources/js/components/dropdown.js class Dropdown (line 9) | class Dropdown extends Component { method setup (line 11) | setup() { method show (line 26) | show(event = null) { method hideAll (line 88) | hideAll() { method hide (line 94) | hide() { method setupListeners (line 113) | setupListeners() { FILE: resources/js/components/dropzone.js class Dropzone (line 7) | class Dropzone extends Component { method setup (line 9) | setup() { method toggleActive (line 34) | toggleActive(active) { method setupListeners (line 38) | setupListeners() { method setupDropTargetHandlers (line 43) | setupDropTargetHandlers() { method manualSelectHandler (line 87) | manualSelectHandler() { method showOverlay (line 104) | showOverlay() { method hideOverlay (line 112) | hideOverlay() { method createUploadFromFile (line 123) | createUploadFromFile(file) { method startXhrForUpload (line 168) | startXhrForUpload(upload) { method createDomForFile (line 202) | createDomForFile(file) { FILE: resources/js/components/editor-toolbox.ts type EditorToolboxChangeEventData (line 3) | interface EditorToolboxChangeEventData { class EditorToolbox (line 8) | class EditorToolbox extends Component { method setup (line 19) | setup() { method setupListeners (line 33) | protected setupListeners(): void { method toggle (line 46) | protected toggle(): void { method setActiveTab (line 55) | protected setActiveTab(tabName: string, openToolbox: boolean = false):... method emitState (line 78) | protected emitState(): void { FILE: resources/js/components/entity-permissions.js class EntityPermissions (line 4) | class EntityPermissions extends Component { method setup (line 6) | setup() { method setupListeners (line 17) | setupListeners() { method addRoleRow (line 45) | async addRoleRow(roleId) { method removeRowOnButtonClick (line 62) | removeRowOnButtonClick(button) { FILE: resources/js/components/entity-search.js class EntitySearch (line 4) | class EntitySearch extends Component { method setup (line 6) | setup() { method setupListeners (line 21) | setupListeners() { method runSearch (line 31) | runSearch() { method clearSearch (line 50) | clearSearch() { FILE: resources/js/components/entity-selector-popup.ts type EntitySelectorPopupCallback (line 5) | type EntitySelectorPopupCallback = (entity: EntitySelectorEntity) => void; class EntitySelectorPopup (line 7) | class EntitySelectorPopup extends Component { method setup (line 16) | setup() { method show (line 29) | show(callback: EntitySelectorPopupCallback, searchOptions: Partial):... method setupListeners (line 58) | setupListeners(): void { method focusAdjacent (line 101) | focusAdjacent(forward = true) { method reset (line 110) | reset() { method focusSearch (line 116) | focusSearch() { method showLoading (line 120) | showLoading() { method hideLoading (line 125) | hideLoading() { method initialLoad (line 130) | initialLoad() { method searchUrl (line 146) | searchUrl() { method searchEntities (line 151) | searchEntities(searchTerm: string) { method isDoubleClick (line 164) | isDoubleClick() { method onClick (line 171) | onClick(event: MouseEvent) { method selectItem (line 180) | selectItem(item: HTMLElement): void { method confirmSelection (line 209) | confirmSelection(data: EntitySelectorEntity) { method unselectAll (line 213) | unselectAll() { FILE: resources/js/components/event-emit-select.js class EventEmitSelect (line 15) | class EventEmitSelect extends Component { method setup (line 17) | setup() { FILE: resources/js/components/expand-toggle.js class ExpandToggle (line 4) | class ExpandToggle extends Component { method setup (line 6) | setup() { method open (line 15) | open(elemToToggle) { method close (line 19) | close(elemToToggle) { method click (line 23) | click(event) { method updateSystemAjax (line 36) | updateSystemAjax(isOpen) { FILE: resources/js/components/global-search.js class GlobalSearch (line 10) | class GlobalSearch extends Component { method setup (line 12) | setup() { method setupListeners (line 23) | setupListeners() { method updateSuggestions (line 53) | async updateSuggestions(search) { method showSuggestions (line 70) | showSuggestions() { method hideSuggestions (line 77) | hideSuggestions() { FILE: resources/js/components/header-mobile-toggle.js class HeaderMobileToggle (line 3) | class HeaderMobileToggle extends Component { method setup (line 5) | setup() { method onToggle (line 16) | onToggle(event) { method onKeyDown (line 30) | onKeyDown(event) { method onWindowClick (line 36) | onWindowClick(event) { FILE: resources/js/components/image-manager.js class ImageManager (line 6) | class ImageManager extends Component { method setup (line 8) | setup() { method setupListeners (line 43) | setupListeners() { method show (line 134) | show(callback, type = 'gallery') { method hide (line 156) | hide() { method getPopup (line 163) | getPopup() { method loadGallery (line 167) | async loadGallery() { method addReturnedHtmlElementsToList (line 183) | addReturnedHtmlElementsToList(html) { method setActiveFilterTab (line 200) | setActiveFilterTab(filterName) { method resetAll (line 207) | resetAll() { method resetSearchView (line 216) | resetSearchView() { method resetEditForm (line 221) | resetEditForm() { method resetListView (line 226) | resetListView() { method refreshGallery (line 231) | refreshGallery() { method onImageSelectEvent (line 236) | async onImageSelectEvent(event) { method loadImageEditForm (line 265) | async loadImageEditForm(imageId, requestDelete = false) { method runLoadMore (line 280) | runLoadMore() { method canLoadMore (line 286) | canLoadMore() { method rebuildThumbnails (line 290) | async rebuildThumbnails(imageId) { FILE: resources/js/components/image-picker.js class ImagePicker (line 3) | class ImagePicker extends Component { method setup (line 5) | setup() { method setupListeners (line 18) | setupListeners() { method fileInputChange (line 28) | fileInputChange() { method reset (line 40) | reset() { method removeImage (line 50) | removeImage() { FILE: resources/js/components/list-sort-control.js class ListSortControl (line 7) | class ListSortControl extends Component { method setup (line 9) | setup() { method setupListeners (line 20) | setupListeners() { method sortOptionClick (line 34) | sortOptionClick(event) { method sortDirectionClick (line 41) | sortDirectionClick(event) { FILE: resources/js/components/loading-button.ts class LoadingButton (line 10) | class LoadingButton extends Component { method setup (line 15) | setup() { method showLoadingState (line 29) | showLoadingState() { FILE: resources/js/components/markdown-editor.js class MarkdownEditor (line 3) | class MarkdownEditor extends Component { method setup (line 5) | setup() { method emitEditorEvents (line 44) | emitEditorEvents() { method setupListeners (line 52) | setupListeners() { method handleDividerDrag (line 85) | handleDividerDrag() { method scrollToTextIfNeeded (line 112) | scrollToTextIfNeeded() { method getDrawioUrl (line 124) | getDrawioUrl() { method getContent (line 138) | async getContent() { FILE: resources/js/components/new-user-password.js class NewUserPassword (line 3) | class NewUserPassword extends Component { method setup (line 5) | setup() { method inviteOptionChange (line 16) | inviteOptionChange() { FILE: resources/js/components/notification.js class Notification (line 3) | class Notification extends Component { method setup (line 5) | setup() { method show (line 25) | show(textToShow = '') { method hide (line 40) | hide() { method hideCleanup (line 45) | hideCleanup() { FILE: resources/js/components/optional-input.js class OptionalInput (line 4) | class OptionalInput extends Component { method setup (line 6) | setup() { method setupListeners (line 13) | setupListeners() { FILE: resources/js/components/page-comment-reference.ts class PageCommentReference (line 16) | class PageCommentReference extends Component { method setup (line 25) | setup() { method showForDisplay (line 75) | public showForDisplay() { method showForEditor (line 82) | protected showForEditor() { method updateMarker (line 98) | protected updateMarker(contentContainer: HTMLElement) { method positionMarker (line 146) | protected positionMarker(targetEl: HTMLElement, range: string) { method hideMarker (line 175) | public hideMarker() { method showCommentAtMarker (line 184) | protected showCommentAtMarker(marker: HTMLElement): void { FILE: resources/js/components/page-comment.ts type PageCommentReplyEventData (line 8) | interface PageCommentReplyEventData { type PageCommentArchiveEventData (line 13) | interface PageCommentArchiveEventData { class PageComment (line 17) | class PageComment extends Component { method setup (line 38) | setup() { method setupListeners (line 63) | protected setupListeners(): void { method toggleEditMode (line 87) | protected toggleEditMode(show: boolean) : void { method startEdit (line 92) | protected async startEdit(): Promise { method update (line 116) | protected async update(event: Event): Promise { method delete (line 140) | protected async delete(): Promise { method archive (line 158) | protected async archive(): Promise { method showLoading (line 176) | protected showLoading(): HTMLElement { FILE: resources/js/components/page-comments.ts class PageComments (line 10) | class PageComments extends Component { method setup (line 41) | setup() { method setupListeners (line 78) | protected setupListeners(): void { method saveComment (line 109) | protected async saveComment(event: SubmitEvent): Promise { method updateCount (line 150) | protected updateCount(): void { method resetForm (line 157) | protected resetForm(): void { method showForm (line 166) | protected showForm(): void { method hideForm (line 180) | protected hideForm(): void { method loadEditor (line 191) | protected async loadEditor(): Promise { method removeEditor (line 212) | protected removeEditor(): void { method getActiveThreadCount (line 219) | protected getActiveThreadCount(): number { method getArchivedThreadCount (line 223) | protected getArchivedThreadCount(): number { method setReply (line 227) | protected setReply(commentLocalId: string, commentElement: HTMLElement... method removeReplyTo (line 237) | protected removeReplyTo(): void { method startNewComment (line 244) | public startNewComment(contentReference: string): void { method setContentReference (line 250) | protected setContentReference(reference: string): void { FILE: resources/js/components/page-display.js function toggleAnchorHighlighting (line 5) | function toggleAnchorHighlighting(elementId, shouldHighlight) { function headingVisibilityChange (line 11) | function headingVisibilityChange(entries) { function addNavObserver (line 18) | function addNavObserver(headings) { class PageDisplay (line 32) | class PageDisplay extends Component { method setup (line 34) | setup() { method goToText (line 60) | goToText(text) { method setupNavHighlighting (line 78) | setupNavHighlighting() { FILE: resources/js/components/page-editor.js class PageEditor (line 6) | class PageEditor extends Component { method setup (line 8) | setup() { method setupListeners (line 62) | setupListeners() { method setInitialFocus (line 94) | setInitialFocus() { method startAutoSave (line 105) | startAutoSave() { method runAutoSave (line 109) | runAutoSave() { method savePage (line 119) | savePage() { method saveDraft (line 123) | async saveDraft() { method draftNotifyChange (line 161) | draftNotifyChange(text) { method discardDraft (line 169) | async discardDraft(notify = true) { method deleteDraft (line 199) | async deleteDraft() { method updateChangelogDisplay (line 219) | updateChangelogDisplay() { method changeEditor (line 229) | async changeEditor(event) { method getEditorComponent (line 245) | getEditorComponent() { FILE: resources/js/components/page-picker.js function toggleElem (line 3) | function toggleElem(elem, show) { class PagePicker (line 7) | class PagePicker extends Component { method setup (line 9) | setup() { method setupListeners (line 23) | setupListeners() { method showPopup (line 33) | showPopup() { method setValue (line 46) | setValue(value, name) { method controlView (line 52) | controlView(name) { method getAssetIdFromVal (line 65) | getAssetIdFromVal() { FILE: resources/js/components/permissions-table.js class PermissionsTable (line 3) | class PermissionsTable extends Component { method setup (line 5) | setup() { method toggleAllClick (line 26) | toggleAllClick(event) { method toggleRowClick (line 31) | toggleRowClick(event) { method toggleColumnClick (line 36) | toggleColumnClick(event) { method toggleAllInElement (line 53) | toggleAllInElement(domElem) { method toggleAllInputs (line 58) | toggleAllInputs(inputsToToggle) { FILE: resources/js/components/pointer.ts class Pointer (line 7) | class Pointer extends Component { method setup (line 25) | setup() { method setupListeners (line 40) | setupListeners() { method hidePointer (line 96) | hidePointer() { method showPointerAtTarget (line 106) | showPointerAtTarget(element: HTMLElement, xPosition: number, keyboardM... method updateDomForTarget (line 143) | updateDomForTarget(element: HTMLElement) { method enterSectionSelectMode (line 162) | enterSectionSelectMode() { method createCommentAtPointer (line 176) | createCommentAtPointer() { FILE: resources/js/components/popup.js class Popup (line 10) | class Popup extends Component { method setup (line 12) | setup() { method setupListeners (line 21) | setupListeners() { method hide (line 36) | hide(onComplete = null) { method show (line 47) | show(onComplete = null, onHide = null) { FILE: resources/js/components/setting-app-color-scheme.js class SettingAppColorScheme (line 3) | class SettingAppColorScheme extends Component { method setup (line 5) | setup() { method handleModeChange (line 28) | handleModeChange(newMode) { method updateAppColorsFromInputs (line 36) | updateAppColorsFromInputs() { method updateLightForInput (line 56) | updateLightForInput(input) { method hexToRgb (line 72) | hexToRgb(hex) { FILE: resources/js/components/setting-color-picker.js class SettingColorPicker (line 3) | class SettingColorPicker extends Component { method setup (line 5) | setup() { method setValue (line 16) | setValue(value) { FILE: resources/js/components/setting-homepage-control.js class SettingHomepageControl (line 3) | class SettingHomepageControl extends Component { method setup (line 5) | setup() { method controlPagePickerVisibility (line 13) | controlPagePickerVisibility() { FILE: resources/js/components/shelf-sort.js class ShelfSort (line 5) | class ShelfSort extends Component { method setup (line 7) | setup() { method initSortable (line 21) | initSortable() { method setupListeners (line 34) | setupListeners() { method filterBooksByName (line 54) | filterBooksByName(filterVal) { method onChange (line 70) | onChange() { method sortShelfBooks (line 75) | sortShelfBooks(sortProperty) { FILE: resources/js/components/shortcut-input.js class ShortcutInput (line 9) | class ShortcutInput extends Component { method setup (line 11) | setup() { method setupListeners (line 17) | setupListeners() { method startListeningForInput (line 29) | startListeningForInput() { method listenerRecordKey (line 36) | listenerRecordKey(event) { method stopListeningForInput (line 50) | stopListeningForInput() { FILE: resources/js/components/shortcuts.js function reverseMap (line 3) | function reverseMap(map) { class Shortcuts (line 11) | class Shortcuts extends Component { method setup (line 13) | setup() { method setupListeners (line 26) | setupListeners() { method handleShortcutPress (line 48) | handleShortcutPress(event) { method runShortcut (line 72) | runShortcut(id) { method showHints (line 99) | showHints() { method showHintLabel (line 132) | showHintLabel(targetEl, key, wrapper) { method hideHints (line 154) | hideHints() { FILE: resources/js/components/sort-rule-manager.ts class SortRuleManager (line 6) | class SortRuleManager extends Component { method setup (line 12) | setup() { method initSortable (line 24) | initSortable() { method onChange (line 37) | onChange() { FILE: resources/js/components/sortable-list.js class SortableList (line 11) | class SortableList extends Component { method setup (line 13) | setup() { FILE: resources/js/components/submit-on-change.js class SubmitOnChange (line 7) | class SubmitOnChange extends Component { method setup (line 9) | setup() { FILE: resources/js/components/tabs.ts type TabsChangeEvent (line 3) | interface TabsChangeEvent { class Tabs (line 24) | class Tabs extends Component { method setup (line 34) | setup() { method show (line 54) | public show(sectionId: string): void { method updateActiveState (line 69) | protected updateActiveState(): void { method activate (line 84) | protected activate(): void { method deactivate (line 90) | protected deactivate(): void { FILE: resources/js/components/tag-manager.js class TagManager (line 3) | class TagManager extends Component { method setup (line 5) | setup() { method setupListeners (line 13) | setupListeners() { method hasEmptyRows (line 23) | hasEmptyRows() { FILE: resources/js/components/template-manager.js class TemplateManager (line 4) | class TemplateManager extends Component { method setup (line 6) | setup() { method setupListeners (line 17) | setupListeners() { method handleTemplateItemClick (line 48) | handleTemplateItemClick(event, templateItem) { method handleTemplateItemDragStart (line 53) | handleTemplateItemDragStart(event, templateItem) { method handleTemplateActionClick (line 59) | handleTemplateActionClick(event, actionButton) { method insertTemplate (line 67) | async insertTemplate(templateId, action = 'replace') { method handlePaginationClick (line 73) | async handlePaginationClick(event, paginationLink) { method performSearch (line 80) | async performSearch() { FILE: resources/js/components/toggle-switch.js class ToggleSwitch (line 3) | class ToggleSwitch extends Component { method setup (line 5) | setup() { method stateChange (line 12) | stateChange() { FILE: resources/js/components/tri-layout.ts class TriLayout (line 3) | class TriLayout extends Component { method setup (line 16) | setup(): void { method updateLayout (line 33) | updateLayout(): void { method setupMobile (line 53) | setupMobile() { method setupDesktop (line 65) | setupDesktop(): void { method mobileTabClick (line 72) | mobileTabClick(event: MouseEvent): void { method showContent (line 81) | showContent(): void { method showTab (line 88) | showTab(tabName: string, scroll: boolean = true): void { method setupSidebarScrollHandlers (line 114) | setupSidebarScrollHandlers(): void { method handleSidebarScroll (line 129) | handleSidebarScroll(sidebar: HTMLElement): void { FILE: resources/js/components/user-select.js class UserSelect (line 4) | class UserSelect extends Component { method setup (line 6) | setup() { method selectUser (line 14) | selectUser(event, userEl) { method hide (line 22) | hide() { FILE: resources/js/components/webhook-events.js class WebhookEvents (line 7) | class WebhookEvents extends Component { method setup (line 9) | setup() { method deselectIndividualEvents (line 22) | deselectIndividualEvents() { FILE: resources/js/components/wysiwyg-editor-tinymce.js class WysiwygEditorTinymce (line 4) | class WysiwygEditorTinymce extends Component { method setup (line 6) | setup() { method getDrawIoUrl (line 29) | getDrawIoUrl() { method getContent (line 42) | async getContent() { FILE: resources/js/components/wysiwyg-editor.js class WysiwygEditor (line 3) | class WysiwygEditor extends Component { method setup (line 5) | setup() { method getDrawIoUrl (line 52) | getDrawIoUrl() { method getContent (line 65) | async getContent() { FILE: resources/js/components/wysiwyg-input.ts class WysiwygInput (line 5) | class WysiwygInput extends Component { method setup (line 10) | async setup() { FILE: resources/js/global.d.ts type Window (line 9) | interface Window { type CodeModule (line 20) | type CodeModule = (typeof import('./code/index.mjs')); FILE: resources/js/markdown/actions.ts type ImageManagerImage (line 6) | interface ImageManagerImage { class Actions (line 13) | class Actions { method constructor (line 21) | constructor(editor: MarkdownEditor) { method updateAndRender (line 25) | updateAndRender() { method getContent (line 37) | getContent() { method showImageInsert (line 41) | showImageInsert() { method insertImage (line 52) | insertImage() { method insertLink (line 57) | insertLink() { method showImageManager (line 64) | showImageManager() { method showLinkSelector (line 73) | showLinkSelector() { method startDrawing (line 91) | startDrawing() { method #insertDrawing (line 114) | #insertDrawing(image: ImageManagerImage, originalSelectionRange: Markd... method editDrawing (line 120) | editDrawing(imgContainer: HTMLElement) { method handleDrawingUploadError (line 157) | handleDrawingUploadError(error: any): void { method fullScreen (line 167) | fullScreen() { method scrollToText (line 175) | scrollToText(searchText: string): void { method focus (line 187) | focus() { method insertContent (line 194) | insertContent(content: string) { method prependContent (line 201) | prependContent(content: string): void { method appendContent (line 212) | appendContent(content: string): void { method replaceContent (line 221) | replaceContent(content: string): void { method replaceLineStart (line 229) | replaceLineStart(newStart: string): void { method wrapSelection (line 258) | wrapSelection(start: string, end: string): void { method replaceLineStartForOrderedList (line 285) | replaceLineStartForOrderedList() { method cycleCalloutTypeAtSelection (line 305) | cycleCalloutTypeAtSelection() { method syncDisplayPosition (line 336) | syncDisplayPosition(event: Event): void { method insertTemplate (line 356) | async insertTemplate(templateId: string, event: MouseEvent): Promise void>; function getMarkdownDomEventHandlers (line 8) | function getMarkdownDomEventHandlers(editor: MarkdownEditor): MarkdownEd... FILE: resources/js/markdown/inputs/codemirror.ts class CodemirrorInput (line 6) | class CodemirrorInput implements MarkdownEditorInput { method constructor (line 9) | constructor(cm: EditorView) { method teardown (line 13) | teardown(): void { method focus (line 17) | focus(): void { method getSelection (line 23) | getSelection(): MarkdownEditorInputSelection { method getSelectionText (line 27) | getSelectionText(selection?: MarkdownEditorInputSelection): string { method setSelection (line 32) | setSelection(selection: MarkdownEditorInputSelection, scrollIntoView: ... method getText (line 39) | getText(): string { method getTextAboveView (line 43) | getTextAboveView(): string { method setText (line 48) | setText(text: string, selection?: MarkdownEditorInputSelection) { method spliceText (line 60) | spliceText(from: number, to: number, newText: string, selection: Parti... method appendText (line 65) | appendText(text: string) { method getLineText (line 70) | getLineText(lineIndex: number = -1): string { method eventToPosition (line 75) | eventToPosition(event: MouseEvent): MarkdownEditorInputSelection { method getLineRangeFromPosition (line 80) | getLineRangeFromPosition(position: number): MarkdownEditorInputSelecti... method searchForLineContaining (line 85) | searchForLineContaining(text: string): MarkdownEditorInputSelection | ... method dispatchChange (line 108) | protected dispatchChange(from: number, to: number|null = null, text: s... FILE: resources/js/markdown/inputs/interface.ts type MarkdownEditorInputSelection (line 2) | interface MarkdownEditorInputSelection { type MarkdownEditorInput (line 7) | interface MarkdownEditorInput { FILE: resources/js/markdown/inputs/textarea.ts type UndoStackEntry (line 6) | type UndoStackEntry = { class UndoStack (line 11) | class UndoStack { method constructor (line 18) | constructor() { method undo (line 22) | undo(): UndoStackEntry|null { method redo (line 32) | redo(): UndoStackEntry|null { method push (line 43) | push(getValueCallback: () => UndoStackEntry): void { method onChange (line 52) | protected onChange(getValueCallback: () => UndoStackEntry) { class TextareaInput (line 69) | class TextareaInput implements MarkdownEditorInput { method constructor (line 80) | constructor( method teardown (line 99) | teardown() { method configureLocalShortcuts (line 103) | configureLocalShortcuts(): void { method configureListeners (line 120) | configureListeners(): void { method onKeyDown (line 136) | onKeyDown(e: KeyboardEvent) { method appendText (line 153) | appendText(text: string): void { method eventToPosition (line 158) | eventToPosition(event: MouseEvent): MarkdownEditorInputSelection { method focus (line 163) | focus(): void { method getLineRangeFromPosition (line 167) | getLineRangeFromPosition(position: number): MarkdownEditorInputSelecti... method getLineText (line 182) | getLineText(lineIndex: number): string { method getSelection (line 188) | getSelection(): MarkdownEditorInputSelection { method getSelectionText (line 192) | getSelectionText(selection?: MarkdownEditorInputSelection): string { method getText (line 198) | getText(): string { method getTextAboveView (line 202) | getTextAboveView(): string { method searchForLineContaining (line 208) | searchForLineContaining(text: string): MarkdownEditorInputSelection | ... method setSelection (line 217) | setSelection(selection: MarkdownEditorInputSelection, scrollIntoView: ... method setText (line 222) | setText(text: string, selection?: MarkdownEditorInputSelection): void { method spliceText (line 230) | spliceText(from: number, to: number, newText: string, selection: Parti... method measureTextSize (line 240) | protected measureTextSize(): {x: number; y: number} { method measureLineCharCount (line 266) | protected measureLineCharCount(textWidth: number): number { method mouseEventToTextRelativeCoords (line 276) | protected mouseEventToTextRelativeCoords(event: MouseEvent): {x: numbe... method inputPositionToSelection (line 288) | protected inputPositionToSelection(x: number, y: number): MarkdownEdit... FILE: resources/js/markdown/markdown.ts class Markdown (line 5) | class Markdown { method constructor (line 8) | constructor() { method getRenderer (line 16) | getRenderer(): MarkdownIt { method render (line 23) | render(markdown: string): string { FILE: resources/js/markdown/settings.ts type ChangeListener (line 1) | type ChangeListener = (value: boolean|number) => void; class Settings (line 3) | class Settings { method constructor (line 13) | constructor(settingInputs: HTMLInputElement[]) { method applyToInputs (line 19) | protected applyToInputs(inputs: HTMLInputElement[]): void { method listenToInputChanges (line 33) | protected listenToInputChanges(inputs: HTMLInputElement[]): void { method loadFromLocalStorage (line 45) | protected loadFromLocalStorage(): void { method set (line 63) | public set(key: string, value: boolean|number): void { method get (line 73) | public get(key: string): number|boolean|null { method onChange (line 77) | public onChange(key: string, callback: ChangeListener): void { FILE: resources/js/markdown/shortcuts.ts type MarkdownEditorShortcutMap (line 3) | type MarkdownEditorShortcutMap = Record void>; function provideShortcutMap (line 8) | function provideShortcutMap(editor: MarkdownEditor): MarkdownEditorShort... FILE: resources/js/services/animations.ts function animateStyles (line 12) | function animateStyles( function cleanupExistingElementAnimation (line 47) | function cleanupExistingElementAnimation(element: Element) { function fadeIn (line 57) | function fadeIn(element: HTMLElement, animTime: number = 400, onComplete... function fadeOut (line 70) | function fadeOut(element: HTMLElement, animTime: number = 400, onComplet... function slideUp (line 83) | function slideUp(element: HTMLElement, animTime: number = 400) { function slideDown (line 104) | function slideDown(element: HTMLElement, animTime: number = 400) { function transitionHeight (line 127) | function transitionHeight(element: HTMLElement, animTime: number = 400):... FILE: resources/js/services/clipboard.ts class Clipboard (line 1) | class Clipboard { method constructor (line 5) | constructor(clipboardData: DataTransfer) { method hasItems (line 12) | hasItems(): boolean { method containsTabularData (line 19) | containsTabularData(): boolean { method getImages (line 27) | getImages(): File[] { method getFiles (line 34) | getFiles(): File[] { function copyTextToClipboard (line 40) | async function copyTextToClipboard(text: string) { FILE: resources/js/services/components.ts function parseRefs (line 8) | function parseRefs(name: string, element: HTMLElement): function parseOpts (line 40) | function parseOpts(componentName: string, element: HTMLElement): Record<... class ComponentStore (line 52) | class ComponentStore { method initComponent (line 72) | protected initComponent(name: string, element: HTMLElement): void { method init (line 110) | public init(parentElement: Document|HTMLElement = document) { method register (line 125) | public register(mapping: Record) { method first (line 135) | public first(name: string): Component|null { method get (line 142) | public get(name: string): T[] { method firstOnElement (line 149) | public firstOnElement(element: HTMLElement, name: string): Component|n... method allWithinElement (line 154) | public allWithinElement(element: HTMLElement, nam... FILE: resources/js/services/dates.ts function getCurrentDay (line 1) | function getCurrentDay(): string { function utcTimeStampToLocalTime (line 9) | function utcTimeStampToLocalTime(timestamp: number): string { FILE: resources/js/services/dom.ts function isHTMLElement (line 6) | function isHTMLElement(el: any): el is HTMLElement { function elem (line 14) | function elem(tagName: string, attrs: Record = {}, child... function forEach (line 39) | function forEach(selector: string, callback: (el: Element) => any) { function onEvents (line 49) | function onEvents(listenerElement: Element|null, events: string[], callb... function onSelect (line 61) | function onSelect(elements: HTMLElement|HTMLElement[], callback: (e: Eve... function onKeyPress (line 80) | function onKeyPress(key: string, elements: HTMLElement|HTMLElement[], ca... function onEnterPress (line 97) | function onEnterPress(elements: HTMLElement|HTMLElement[], callback: (e:... function onEscapePress (line 104) | function onEscapePress(elements: HTMLElement|HTMLElement[], callback: (e... function onChildEvent (line 113) | function onChildEvent( function findText (line 131) | function findText(selector: string, text: string): Element|null { function showLoading (line 146) | function showLoading(element: HTMLElement): void { function getLoading (line 153) | function getLoading(): HTMLElement { function removeLoading (line 163) | function removeLoading(element: HTMLElement): void { function htmlToDom (line 174) | function htmlToDom(html: string): HTMLElement { function normalizeNodeTextOffsetToParent (line 189) | function normalizeNodeTextOffsetToParent(node: Node, offset: number, par... function findTargetNodeAndOffset (line 214) | function findTargetNodeAndOffset(parentNode: HTMLElement, offset: number... function hashElement (line 256) | function hashElement(element: HTMLElement): string { function findClosestScrollContainer (line 265) | function findClosestScrollContainer(start: HTMLElement): HTMLElement { FILE: resources/js/services/drawio.ts type DrawioExportEventResponse (line 6) | type DrawioExportEventResponse = { type DrawioSaveEventResponse (line 14) | type DrawioSaveEventResponse = { function drawPostMessage (line 25) | function drawPostMessage(data: Record): void { function drawEventExport (line 29) | function drawEventExport(message: DrawioExportEventResponse) { function drawEventSave (line 38) | function drawEventSave(message: DrawioSaveEventResponse) { function drawEventInit (line 44) | function drawEventInit() { function drawEventConfigure (line 51) | function drawEventConfigure() { function drawEventClose (line 59) | function drawEventClose() { function drawReceive (line 68) | function drawReceive(event: MessageEvent) { function attemptRestoreIfExists (line 90) | async function attemptRestoreIfExists() { function show (line 114) | async function show(drawioUrl: string, onInitCallback: () => Promise { FILE: resources/js/services/dual-lists.ts type ListActionsSet (line 6) | type ListActionsSet = Record void)>; function buildListActions (line 8) | function buildListActions( function sortActionClickListener (line 34) | function sortActionClickListener(actions: ListActionsSet, onChange: () =... FILE: resources/js/services/events.ts type Listener (line 3) | type Listener = (data: any) => void; class EventManager (line 5) | class EventManager { method emit (line 12) | emit(eventName: string, eventData: {} = {}): void { method listen (line 24) | listen(eventName: string, callback: (data: T) => void): void { method remove (line 32) | remove(eventName: string, callback: Listener): void { method emitPublic (line 44) | emitPublic(targetElement: Element, eventName: string, eventData: {}): ... method success (line 55) | success(message: string): void { method error (line 62) | error(message: string): void { method showValidationErrors (line 69) | showValidationErrors(responseErr: HttpError): void { method showResponseError (line 79) | showResponseError(responseErr: {status?: number, data?: Record|string; type RequestOptions (line 3) | type RequestOptions = { type FormattedResponse (line 8) | type FormattedResponse = { class HttpError (line 18) | class HttpError extends Error implements FormattedResponse { method constructor (line 28) | constructor(response: Response, content: ResponseData) { class HttpManager (line 40) | class HttpManager { method getResponseContent (line 46) | protected async getResponseContent(response: Response): Promise { method post (line 169) | async post(url: string, data: null|Record = null): Promis... method put (line 176) | async put(url: string, data: null|Record = null): Promise... method patch (line 183) | async patch(url: string, data: null|Record = null): Promi... method delete (line 190) | async delete(url: string, data: null|Record = null): Prom... method formatErrorResponseText (line 199) | protected formatErrorResponseText(text: string): string { FILE: resources/js/services/keyboard-navigation.ts type OptionalKeyEventHandler (line 3) | type OptionalKeyEventHandler = ((e: KeyboardEvent) => any)|null; class KeyboardNavigationHandler (line 8) | class KeyboardNavigationHandler { method constructor (line 14) | constructor(container: HTMLElement, onEscape: OptionalKeyEventHandler ... method shareHandlingToEl (line 25) | shareHandlingToEl(element: HTMLElement) { method focusNext (line 33) | focusNext() { method focusPrevious (line 48) | focusPrevious() { method #keydownHandler (line 60) | #keydownHandler(event: KeyboardEvent) { method #getFocusable (line 86) | #getFocusable(): HTMLElement[] { FILE: resources/js/services/text.ts function kebabToCamel (line 4) | function kebabToCamel(kebab: string): string { function camelToKebab (line 13) | function camelToKebab(camelStr: string): string { FILE: resources/js/services/translations.ts class Translator (line 6) | class Translator { method choice (line 12) | choice(translation: string, count: number, replacements: Record any>(func: T, waitMs: nu... function isDetailsElement (line 25) | function isDetailsElement(element: HTMLElement): element is HTMLDetailsE... function scrollAndHighlightElement (line 32) | function scrollAndHighlightElement(element: HTMLElement): void { function escapeHtml (line 67) | function escapeHtml(unsafe: string): string { function uniqueId (line 79) | function uniqueId(): string { function uniqueIdSmall (line 88) | function uniqueIdSmall(): string { function wait (line 97) | function wait(timeMs: number): Promise { function baseUrl (line 107) | function baseUrl(path: string): string { function getVersion (line 130) | function getVersion(): string { function importVersioned (line 144) | function importVersioned(moduleName: string): Promise { function cyrb53 (line 156) | function cyrb53(str: string, seed: number = 0): string { FILE: resources/js/services/vdom.ts type vDomPatcher (line 8) | type vDomPatcher = (oldVnode: VNode | Element | DocumentFragment, vnode:... function getPatcher (line 12) | function getPatcher(): vDomPatcher { function patchDomFromHtmlString (line 22) | function patchDomFromHtmlString(domTarget: Element, html: string): void { FILE: resources/js/wysiwyg-tinymce/common-events.js function listen (line 4) | function listen(editor) { FILE: resources/js/wysiwyg-tinymce/config.js function filePickerCallback (line 82) | function filePickerCallback(callback, value, meta) { function gatherPlugins (line 115) | function gatherPlugins(options) { function addCustomHeadContent (line 157) | function addCustomHeadContent(editorDoc) { function getSetupCallback (line 176) | function getSetupCallback(options) { function getContentStyle (line 221) | function getContentStyle(options) { function buildForEditor (line 241) | function buildForEditor(options) { FILE: resources/js/wysiwyg-tinymce/drop-paste-handling.js function hasTextContent (line 6) | function hasTextContent(node) { function uploadImageFile (line 15) | async function uploadImageFile(file, pageId) { function paste (line 35) | function paste(editor, options, event) { function dragStart (line 74) | function dragStart(editor) { function drop (line 96) | function drop(editor, options, event) { function dragOver (line 156) | function dragOver(editor, event) { function listenForDragAndPaste (line 170) | function listenForDragAndPaste(editor, options) { FILE: resources/js/wysiwyg-tinymce/filters.js function setupBrFilter (line 6) | function setupBrFilter(editor) { function setupPointerFilter (line 24) | function setupPointerFilter(editor) { function setupFilters (line 40) | function setupFilters(editor) { FILE: resources/js/wysiwyg-tinymce/fixes.js function handleEmbedAlignmentChanges (line 10) | function handleEmbedAlignmentChanges(editor) { function cleanChildAlignment (line 62) | function cleanChildAlignment(element) { function cleanElementDirection (line 77) | function cleanElementDirection(element) { function handleTableCellRangeEvents (line 102) | function handleTableCellRangeEvents(editor) { function handleTextDirectionCleaning (line 171) | function handleTextDirectionCleaning(editor) { FILE: resources/js/wysiwyg-tinymce/icons.js function registerCustomIcons (line 15) | function registerCustomIcons(editor) { FILE: resources/js/wysiwyg-tinymce/plugin-codeeditor.js function elemIsCodeBlock (line 1) | function elemIsCodeBlock(elem) { function showPopup (line 12) | function showPopup(editor, code, language, direction, callback) { function showPopupForCodeBlock (line 30) | function showPopupForCodeBlock(editor, codeBlock) { function defineCodeBlockCustomElement (line 43) | function defineCodeBlockCustomElement(editor) { function register (line 158) | function register(editor) { function getPlugin (line 266) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/plugin-drawio.js function isDrawing (line 12) | function isDrawing(node) { function showDrawingManager (line 16) | function showDrawingManager(mceEditor, selectedNode = null) { function updateContent (line 36) | async function updateContent(pngData) { function drawingInit (line 85) | function drawingInit() { function showDrawingEditor (line 94) | function showDrawingEditor(mceEditor, selectedNode = null) { function register (line 103) | function register(editor) { function getPlugin (line 159) | function getPlugin(providedOptions) { FILE: resources/js/wysiwyg-tinymce/plugins-about.js function register (line 4) | function register(editor) { function getPlugin (line 22) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/plugins-customhr.js function register (line 4) | function register(editor) { function getPlugin (line 24) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/plugins-details.js function getSelectedDetailsBlock (line 6) | function getSelectedDetailsBlock(editor) { function setSummary (line 10) | function setSummary(editor, summaryContent) { function detailsDialog (line 27) | function detailsDialog(editor) { function getSummaryTextFromDetails (line 62) | function getSummaryTextFromDetails(element) { function showDetailLabelEditWindow (line 73) | function showDetailLabelEditWindow(editor) { function unwrapDetailsInSelection (line 82) | function unwrapDetailsInSelection(editor) { function unwrapDetailsEditable (line 104) | function unwrapDetailsEditable(detailsEl) { function ensureDetailsWrappedInEditable (line 122) | function ensureDetailsWrappedInEditable(detailsEl) { function setupElementFilters (line 151) | function setupElementFilters(editor) { function register (line 175) | function register(editor) { function getPlugin (line 262) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/plugins-imagemanager.js function register (line 4) | function register(editor) { function getPlugin (line 27) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/plugins-stub.js function register (line 5) | function register(editor, url) { function getPlugin (line 13) | function getPlugin(options) { FILE: resources/js/wysiwyg-tinymce/plugins-table-additions.js function register (line 4) | function register(editor) { function getPlugin (line 90) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/plugins-tasklist.js function elementWithinTaskList (line 5) | function elementWithinTaskList(element) { function handleTaskListItemClick (line 15) | function handleTaskListItemClick(event, clickedEl, editor) { function parseTaskListNode (line 37) | function parseTaskListNode(node) { function serializeTaskListNode (line 55) | function serializeTaskListNode(node) { function register (line 79) | function register(editor) { function getPlugin (line 171) | function getPlugin() { FILE: resources/js/wysiwyg-tinymce/scrolling.js function scrollToText (line 5) | function scrollToText(editor, scrollId) { function scrollToQueryString (line 23) | function scrollToQueryString(editor) { FILE: resources/js/wysiwyg-tinymce/shortcuts.js function register (line 4) | function register(editor) { FILE: resources/js/wysiwyg-tinymce/toolbars.js function getPrimaryToolbar (line 5) | function getPrimaryToolbar(options) { function registerPrimaryToolbarGroups (line 25) | function registerPrimaryToolbarGroups(editor) { function registerLinkContextToolbar (line 46) | function registerLinkContextToolbar(editor) { function registerImageContextToolbar (line 60) | function registerImageContextToolbar(editor) { function registerObjectContextToolbar (line 74) | function registerObjectContextToolbar(editor) { function registerAdditionalToolbars (line 88) | function registerAdditionalToolbars(editor) { FILE: resources/js/wysiwyg/api/__tests__/api-test-utils.ts function createEditorApiInstance (line 10) | function createEditorApiInstance(): { api: EditorApi; context: EditorUiC... FILE: resources/js/wysiwyg/api/__tests__/content.test.ts function insertAndSelectSampleBlock (line 82) | function insertAndSelectSampleBlock(editor: LexicalEditor) { FILE: resources/js/wysiwyg/api/__tests__/ui.test.ts function testToolbar (line 116) | function testToolbar(): EditorContainerUiElement { FILE: resources/js/wysiwyg/api/api.ts class EditorApi (line 5) | class EditorApi { method constructor (line 10) | constructor(context: EditorUiContext) { FILE: resources/js/wysiwyg/api/content.ts class EditorApiContentModule (line 5) | class EditorApiContentModule { method constructor (line 8) | constructor(context: EditorUiContext) { method insertHtml (line 12) | insertHtml(html: string, position: string = 'selection'): void { FILE: resources/js/wysiwyg/api/ui.ts type EditorApiButtonOptions (line 5) | type EditorApiButtonOptions = { class EditorApiButton (line 11) | class EditorApiButton { method constructor (line 15) | constructor(options: EditorApiButtonOptions, context: EditorUiContext) { method setActive (line 27) | setActive(active: boolean = true): void { method _getOriginalModel (line 32) | _getOriginalModel() { class EditorApiToolbar (line 37) | class EditorApiToolbar { method constructor (line 40) | constructor(toolbar: EditorContainerUiElement) { method getSections (line 44) | getSections(): EditorApiToolbarSection[] { class EditorApiToolbarSection (line 52) | class EditorApiToolbarSection { method constructor (line 55) | constructor(section: EditorOverflowContainer) { method getLabel (line 59) | getLabel(): string { method addButton (line 63) | addButton(button: EditorApiButton, targetIndex: number = -1): void { class EditorApiUiModule (line 70) | class EditorApiUiModule { method constructor (line 73) | constructor(context: EditorUiContext) { method createButton (line 77) | createButton(options: EditorApiButtonOptions): EditorApiButton { method getMainToolbar (line 81) | getMainToolbar(): EditorApiToolbar|null { FILE: resources/js/wysiwyg/index.ts function createPageEditorInstance (line 46) | function createPageEditorInstance(container: HTMLElement, htmlContent: s... function createBasicEditorInstance (line 113) | function createBasicEditorInstance(container: HTMLElement, htmlContent: ... function createCommentEditorInstance (line 146) | function createCommentEditorInstance(container: HTMLElement, htmlContent... class SimpleWysiwygEditorInterface (line 182) | class SimpleWysiwygEditorInterface { method constructor (line 187) | constructor(context: EditorUiContext) { method getContentAsHtml (line 191) | async getContentAsHtml(): Promise { method onChange (line 195) | onChange(listener: () => void) { method focus (line 200) | focus(): void { method remove (line 204) | remove() { method startListeningToChanges (line 212) | protected startListeningToChanges(): void { FILE: resources/js/wysiwyg/lexical/clipboard/clipboard.ts type LexicalClipboardData (line 38) | interface LexicalClipboardData { function $getHtmlContent (line 54) | function $getHtmlContent( function $getLexicalContent (line 83) | function $getLexicalContent( function $insertDataTransferForPlainText (line 110) | function $insertDataTransferForPlainText( function $insertDataTransferForRichText (line 131) | function $insertDataTransferForRichText( function $insertGeneratedNodes (line 205) | function $insertGeneratedNodes( type BaseSerializedNode (line 221) | interface BaseSerializedNode { function exportNodeToJSON (line 227) | function exportNodeToJSON(node: T): BaseSerialize... function $appendNodesToJSON (line 254) | function $appendNodesToJSON( function $generateJSONFromSelectedNodes (line 335) | function $generateJSONFromSelectedNodes< function $generateNodesFromSerializedNodes (line 365) | function $generateNodesFromSerializedNodes( constant EVENT_LATENCY (line 380) | const EVENT_LATENCY = 50; function copyToClipboard (line 394) | async function copyToClipboard( function $copyToClipboardEvent (line 460) | function $copyToClipboardEvent( function $getClipboardDataFromSelection (line 507) | function $getClipboardDataFromSelection( function setLexicalClipboardDataTransfer (line 532) | function setLexicalClipboardDataTransfer( FILE: resources/js/wysiwyg/lexical/core/LexicalCommands.ts type PasteCommandType (line 16) | type PasteCommandType = ClipboardEvent | InputEvent | KeyboardEvent; function createCommand (line 18) | function createCommand(type?: string): LexicalCommand { constant SELECTION_CHANGE_COMMAND (line 22) | const SELECTION_CHANGE_COMMAND: LexicalCommand = createCommand( constant SELECTION_INSERT_CLIPBOARD_NODES_COMMAND (line 25) | const SELECTION_INSERT_CLIPBOARD_NODES_COMMAND: LexicalCommand<{ constant CLICK_COMMAND (line 29) | const CLICK_COMMAND: LexicalCommand = constant DELETE_CHARACTER_COMMAND (line 31) | const DELETE_CHARACTER_COMMAND: LexicalCommand = createCommand( constant INSERT_LINE_BREAK_COMMAND (line 34) | const INSERT_LINE_BREAK_COMMAND: LexicalCommand = createCommand( constant INSERT_PARAGRAPH_COMMAND (line 37) | const INSERT_PARAGRAPH_COMMAND: LexicalCommand = createCommand( constant CONTROLLED_TEXT_INSERTION_COMMAND (line 40) | const CONTROLLED_TEXT_INSERTION_COMMAND: LexicalCommand< constant PASTE_COMMAND (line 43) | const PASTE_COMMAND: LexicalCommand = constant REMOVE_TEXT_COMMAND (line 45) | const REMOVE_TEXT_COMMAND: LexicalCommand = constant DELETE_WORD_COMMAND (line 47) | const DELETE_WORD_COMMAND: LexicalCommand = createCommand( constant DELETE_LINE_COMMAND (line 50) | const DELETE_LINE_COMMAND: LexicalCommand = createCommand( constant FORMAT_TEXT_COMMAND (line 53) | const FORMAT_TEXT_COMMAND: LexicalCommand = constant UNDO_COMMAND (line 55) | const UNDO_COMMAND: LexicalCommand = createCommand('UNDO_COMMAND'); constant REDO_COMMAND (line 56) | const REDO_COMMAND: LexicalCommand = createCommand('REDO_COMMAND'); constant KEY_DOWN_COMMAND (line 57) | const KEY_DOWN_COMMAND: LexicalCommand = constant KEY_ARROW_RIGHT_COMMAND (line 59) | const KEY_ARROW_RIGHT_COMMAND: LexicalCommand = constant MOVE_TO_END (line 61) | const MOVE_TO_END: LexicalCommand = constant KEY_ARROW_LEFT_COMMAND (line 63) | const KEY_ARROW_LEFT_COMMAND: LexicalCommand = constant MOVE_TO_START (line 65) | const MOVE_TO_START: LexicalCommand = constant KEY_ARROW_UP_COMMAND (line 67) | const KEY_ARROW_UP_COMMAND: LexicalCommand = constant KEY_ARROW_DOWN_COMMAND (line 69) | const KEY_ARROW_DOWN_COMMAND: LexicalCommand = constant KEY_ENTER_COMMAND (line 71) | const KEY_ENTER_COMMAND: LexicalCommand = constant KEY_SPACE_COMMAND (line 73) | const KEY_SPACE_COMMAND: LexicalCommand = constant KEY_BACKSPACE_COMMAND (line 75) | const KEY_BACKSPACE_COMMAND: LexicalCommand = constant KEY_ESCAPE_COMMAND (line 77) | const KEY_ESCAPE_COMMAND: LexicalCommand = constant KEY_DELETE_COMMAND (line 79) | const KEY_DELETE_COMMAND: LexicalCommand = constant KEY_AT_COMMAND (line 81) | const KEY_AT_COMMAND: LexicalCommand = constant KEY_TAB_COMMAND (line 83) | const KEY_TAB_COMMAND: LexicalCommand = constant INSERT_TAB_COMMAND (line 85) | const INSERT_TAB_COMMAND: LexicalCommand = constant INDENT_CONTENT_COMMAND (line 87) | const INDENT_CONTENT_COMMAND: LexicalCommand = createCommand( constant OUTDENT_CONTENT_COMMAND (line 90) | const OUTDENT_CONTENT_COMMAND: LexicalCommand = createCommand( constant DROP_COMMAND (line 93) | const DROP_COMMAND: LexicalCommand = constant DRAGSTART_COMMAND (line 95) | const DRAGSTART_COMMAND: LexicalCommand = constant DRAGOVER_COMMAND (line 97) | const DRAGOVER_COMMAND: LexicalCommand = constant DRAGEND_COMMAND (line 99) | const DRAGEND_COMMAND: LexicalCommand = constant COPY_COMMAND (line 101) | const COPY_COMMAND: LexicalCommand< constant CUT_COMMAND (line 104) | const CUT_COMMAND: LexicalCommand< constant SELECT_ALL_COMMAND (line 107) | const SELECT_ALL_COMMAND: LexicalCommand = constant CLEAR_EDITOR_COMMAND (line 109) | const CLEAR_EDITOR_COMMAND: LexicalCommand = createCommand( constant CLEAR_HISTORY_COMMAND (line 112) | const CLEAR_HISTORY_COMMAND: LexicalCommand = createCommand( constant CAN_REDO_COMMAND (line 115) | const CAN_REDO_COMMAND: LexicalCommand = constant CAN_UNDO_COMMAND (line 117) | const CAN_UNDO_COMMAND: LexicalCommand = constant FOCUS_COMMAND (line 119) | const FOCUS_COMMAND: LexicalCommand = constant BLUR_COMMAND (line 121) | const BLUR_COMMAND: LexicalCommand = constant KEY_MODIFIER_COMMAND (line 123) | const KEY_MODIFIER_COMMAND: LexicalCommand = FILE: resources/js/wysiwyg/lexical/core/LexicalConstants.ts constant DOM_ELEMENT_TYPE (line 23) | const DOM_ELEMENT_TYPE = 1; constant DOM_TEXT_TYPE (line 24) | const DOM_TEXT_TYPE = 3; constant NO_DIRTY_NODES (line 27) | const NO_DIRTY_NODES = 0; constant HAS_DIRTY_NODES (line 28) | const HAS_DIRTY_NODES = 1; constant FULL_RECONCILE (line 29) | const FULL_RECONCILE = 2; constant IS_NORMAL (line 32) | const IS_NORMAL = 0; constant IS_TOKEN (line 33) | const IS_TOKEN = 1; constant IS_SEGMENTED (line 34) | const IS_SEGMENTED = 2; constant IS_BOLD (line 38) | const IS_BOLD = 1; constant IS_ITALIC (line 39) | const IS_ITALIC = 1 << 1; constant IS_STRIKETHROUGH (line 40) | const IS_STRIKETHROUGH = 1 << 2; constant IS_UNDERLINE (line 41) | const IS_UNDERLINE = 1 << 3; constant IS_CODE (line 42) | const IS_CODE = 1 << 4; constant IS_SUBSCRIPT (line 43) | const IS_SUBSCRIPT = 1 << 5; constant IS_SUPERSCRIPT (line 44) | const IS_SUPERSCRIPT = 1 << 6; constant IS_HIGHLIGHT (line 45) | const IS_HIGHLIGHT = 1 << 7; constant IS_ALL_FORMATTING (line 47) | const IS_ALL_FORMATTING = constant IS_DIRECTIONLESS (line 58) | const IS_DIRECTIONLESS = 1; constant IS_UNMERGEABLE (line 59) | const IS_UNMERGEABLE = 1 << 1; constant IS_ALIGN_LEFT (line 62) | const IS_ALIGN_LEFT = 1; constant IS_ALIGN_CENTER (line 63) | const IS_ALIGN_CENTER = 2; constant IS_ALIGN_RIGHT (line 64) | const IS_ALIGN_RIGHT = 3; constant IS_ALIGN_JUSTIFY (line 65) | const IS_ALIGN_JUSTIFY = 4; constant IS_ALIGN_START (line 66) | const IS_ALIGN_START = 5; constant IS_ALIGN_END (line 67) | const IS_ALIGN_END = 6; constant NON_BREAKING_SPACE (line 70) | const NON_BREAKING_SPACE = '\u00A0'; constant ZERO_WIDTH_SPACE (line 71) | const ZERO_WIDTH_SPACE = '\u200b'; constant COMPOSITION_SUFFIX (line 75) | const COMPOSITION_SUFFIX: string = constant DOUBLE_LINE_BREAK (line 79) | const DOUBLE_LINE_BREAK = '\n\n'; constant COMPOSITION_START_CHAR (line 83) | const COMPOSITION_START_CHAR: string = IS_FIREFOX constant RTL (line 86) | const RTL = '\u0591-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC'; constant LTR (line 87) | const LTR = constant RTL_REGEX (line 93) | const RTL_REGEX = new RegExp('^[^' + LTR + ']*[' + RTL + ']'); constant LTR_REGEX (line 95) | const LTR_REGEX = new RegExp('^[^' + RTL + ']*[' + LTR + ']'); constant TEXT_TYPE_TO_FORMAT (line 97) | const TEXT_TYPE_TO_FORMAT: Record = { constant DETAIL_TYPE_TO_DETAIL (line 108) | const DETAIL_TYPE_TO_DETAIL: Record = { constant TEXT_MODE_TO_TYPE (line 113) | const TEXT_MODE_TO_TYPE: Record = { constant TEXT_TYPE_TO_MODE (line 119) | const TEXT_TYPE_TO_MODE: Record = { FILE: resources/js/wysiwyg/lexical/core/LexicalEditor.ts type Spread (line 49) | type Spread = Omit & T1; type KlassConstructor (line 53) | type KlassConstructor> = type GenericConstructor (line 56) | type GenericConstructor = new (...args: any[]) => T; type Klass (line 58) | type Klass = InstanceType< type EditorThemeClassName (line 64) | type EditorThemeClassName = string; type TextNodeThemeClasses (line 66) | type TextNodeThemeClasses = { type EditorUpdateOptions (line 80) | type EditorUpdateOptions = { type EditorSetOptions (line 87) | type EditorSetOptions = { type EditorFocusOptions (line 91) | type EditorFocusOptions = { type EditorThemeClasses (line 95) | type EditorThemeClasses = { type EditorConfig (line 158) | type EditorConfig = { type LexicalNodeReplacement (line 164) | type LexicalNodeReplacement = { type HTMLConfig (line 173) | type HTMLConfig = { type CreateEditorArgs (line 178) | type CreateEditorArgs = { type RegisteredNodes (line 190) | type RegisteredNodes = Map; type RegisteredNode (line 192) | type RegisteredNode = { type Transform (line 203) | type Transform = (node: T) => void; type ErrorHandler (line 205) | type ErrorHandler = (error: Error) => void; type MutationListeners (line 207) | type MutationListeners = Map>; type MutatedNodes (line 209) | type MutatedNodes = Map, Map>; type NodeMutation (line 211) | type NodeMutation = 'created' | 'updated' | 'destroyed'; type MutationListenerOptions (line 213) | interface MutationListenerOptions { constant DEFAULT_SKIP_INITIALIZATION (line 223) | const DEFAULT_SKIP_INITIALIZATION = true; type UpdateListener (line 225) | type UpdateListener = (arg0: { type DecoratorListener (line 234) | type DecoratorListener = ( type RootListener (line 238) | type RootListener = ( type TextContentListener (line 243) | type TextContentListener = (text: string) => void; type MutationListener (line 245) | type MutationListener = ( type CommandListener (line 254) | type CommandListener

= (payload: P, editor: LexicalEditor) => boolean; type EditableListener (line 256) | type EditableListener = (editable: boolean) => void; type CommandListenerPriority (line 258) | type CommandListenerPriority = 0 | 1 | 2 | 3 | 4; constant COMMAND_PRIORITY_EDITOR (line 260) | const COMMAND_PRIORITY_EDITOR = 0; constant COMMAND_PRIORITY_LOW (line 261) | const COMMAND_PRIORITY_LOW = 1; constant COMMAND_PRIORITY_NORMAL (line 262) | const COMMAND_PRIORITY_NORMAL = 2; constant COMMAND_PRIORITY_HIGH (line 263) | const COMMAND_PRIORITY_HIGH = 3; constant COMMAND_PRIORITY_CRITICAL (line 264) | const COMMAND_PRIORITY_CRITICAL = 4; type LexicalCommand (line 267) | type LexicalCommand = { type CommandPayloadType (line 291) | type CommandPayloadType> = type Commands (line 294) | type Commands = Map< type Listeners (line 298) | type Listeners = { type Listener (line 307) | type Listener = type ListenerType (line 315) | type ListenerType = type TransformerType (line 323) | type TransformerType = 'text' | 'decorator' | 'element' | 'root'; type IntentionallyMarkedAsDirtyElement (line 325) | type IntentionallyMarkedAsDirtyElement = boolean; type DOMConversionCache (line 327) | type DOMConversionCache = Map< type SerializedEditor (line 332) | type SerializedEditor = { function resetEditor (line 336) | function resetEditor( function initializeConversionCache (line 374) | function initializeConversionCache( function createEditor (line 419) | function createEditor(editorConfig?: CreateEditorArgs): LexicalEditor { class LexicalEditor (line 560) | class LexicalEditor { method constructor (line 626) | constructor( method isComposing (line 692) | isComposing(): boolean { method registerUpdateListener (line 702) | registerUpdateListener(listener: UpdateListener): () => void { method registerEditableListener (line 716) | registerEditableListener(listener: EditableListener): () => void { method registerDecoratorListener (line 732) | registerDecoratorListener(listener: DecoratorListener): () => vo... method registerTextContentListener (line 749) | registerTextContentListener(listener: TextContentListener): () => void { method registerRootListener (line 767) | registerRootListener(listener: RootListener): () => void { method registerCommand (line 788) | registerCommand

( method registerMutationListener (line 852) | registerMutationListener( method getRegisteredNode (line 877) | private getRegisteredNode(klass: Klass): RegisteredNode { method resolveRegisteredNodeAfterReplacements (line 892) | private resolveRegisteredNodeAfterReplacements( method initializeMutationListener (line 902) | private initializeMutationListener( method registerNodeTransformToKlass (line 927) | private registerNodeTransformToKlass( method registerNodeTransform (line 947) | registerNodeTransform( method hasNode (line 976) | hasNode>(node: T): boolean { method hasNodes (line 985) | hasNodes>(nodes: Array): boolean { method dispatchCommand (line 996) | dispatchCommand>( method getDecorators (line 1007) | getDecorators(): Record { method getRootElement (line 1017) | getRootElement(): null | HTMLElement { method getKey (line 1025) | getKey(): string { method setRootElement (line 1033) | setRootElement(nextRootElement: null | HTMLElement): void { method getElementByKey (line 1091) | getElementByKey(key: NodeKey): HTMLElement | null { method getEditorState (line 1099) | getEditorState(): EditorState { method setEditorState (line 1108) | setEditorState(editorState: EditorState, options?: EditorSetOptions): ... method parseEditorState (line 1149) | parseEditorState( method read (line 1168) | read(callbackFn: () => T): T { method update (line 1187) | update(updateFn: () => void, options?: EditorUpdateOptions): void { method updateAndCommit (line 1194) | updateAndCommit(updateFn: () => void, options?: EditorUpdateOptions): ... method focus (line 1206) | focus(callbackFn?: () => void, options: EditorFocusOptions = {}): void { method commitUpdates (line 1250) | commitUpdates(): void { method blur (line 1257) | blur(): void { method isEditable (line 1274) | isEditable(): boolean { method setEditable (line 1282) | setEditable(editable: boolean): void { method toJSON (line 1297) | toJSON(): SerializedEditor { FILE: resources/js/wysiwyg/lexical/core/LexicalEditorState.ts type SerializedEditorState (line 22) | interface SerializedEditorState< function editorStateHasDirtySelection (line 28) | function editorStateHasDirtySelection( function cloneEditorState (line 48) | function cloneEditorState(current: EditorState): EditorState { function createEmptyEditorState (line 52) | function createEmptyEditorState(): EditorState { function exportNodeToJSON (line 56) | function exportNodeToJSON( type EditorStateReadOptions (line 94) | interface EditorStateReadOptions { class EditorState (line 98) | class EditorState { method constructor (line 104) | constructor(nodeMap: NodeMap, selection?: null | BaseSelection) { method isEmpty (line 111) | isEmpty(): boolean { method read (line 115) | read(callbackFn: () => V, options?: EditorStateReadOptions): V { method clone (line 123) | clone(selection?: null | BaseSelection): EditorState { method toJSON (line 132) | toJSON(): SerializedEditorState { FILE: resources/js/wysiwyg/lexical/core/LexicalEvents.ts type RootElementRemoveHandles (line 135) | type RootElementRemoveHandles = Array<() => void>; type RootElementEvents (line 136) | type RootElementEvents = Array< constant PASS_THROUGH_COMMAND (line 142) | const PASS_THROUGH_COMMAND = Object.freeze({}); constant ANDROID_COMPOSITION_LATENCY (line 143) | const ANDROID_COMPOSITION_LATENCY = 30; function $shouldPreventDefaultAndInsertText (line 193) | function $shouldPreventDefaultAndInsertText( function shouldSkipSelectionChange (line 252) | function shouldSkipSelectionChange( function onSelectionChange (line 265) | function onSelectionChange( function onClick (line 416) | function onClick(event: PointerEvent, editor: LexicalEditor): void { function onPointerDown (line 481) | function onPointerDown(event: PointerEvent, editor: LexicalEditor) { function getTargetRange (line 496) | function getTargetRange(event: InputEvent): null | StaticRange { function $canRemoveText (line 507) | function $canRemoveText( function isPossiblyAndroidKeyPress (line 520) | function isPossiblyAndroidKeyPress(timeStamp: number): boolean { function onBeforeInput (line 527) | function onBeforeInput(event: InputEvent, editor: LexicalEditor): void { function onInput (line 802) | function onInput(event: InputEvent, editor: LexicalEditor): void { function onCompositionStart (line 893) | function onCompositionStart( function $onCompositionEndImpl (line 930) | function $onCompositionEndImpl(editor: LexicalEditor, data?: string): vo... function onCompositionEnd (line 978) | function onCompositionEnd( function onKeyDown (line 996) | function onKeyDown(event: KeyboardEvent, editor: LexicalEditor): void { function getRootElementRemoveHandles (line 1109) | function getRootElementRemoveHandles( function onDocumentSelectionChange (line 1128) | function onDocumentSelectionChange(event: Event): void { function stopLexicalPropagation (line 1194) | function stopLexicalPropagation(event: Event): void { function hasStoppedLexicalPropagation (line 1201) | function hasStoppedLexicalPropagation(event: Event): boolean { type EventHandler (line 1207) | type EventHandler = (event: Event, editor: LexicalEditor) => void; function addRootElementEvents (line 1209) | function addRootElementEvents( function removeRootElementEvents (line 1317) | function removeRootElementEvents(rootElement: HTMLElement): void { function cleanActiveNestedEditorsMap (line 1357) | function cleanActiveNestedEditorsMap(editor: LexicalEditor) { function markSelectionChangeFromDOMUpdate (line 1373) | function markSelectionChangeFromDOMUpdate(): void { function markCollapsedSelectionFormat (line 1377) | function markCollapsedSelectionFormat( FILE: resources/js/wysiwyg/lexical/core/LexicalGC.ts function $garbageCollectDetachedDecorators (line 17) | function $garbageCollectDetachedDecorators( type IntentionallyMarkedAsDirtyElement (line 38) | type IntentionallyMarkedAsDirtyElement = boolean; function $garbageCollectDetachedDeepChildNodes (line 40) | function $garbageCollectDetachedDeepChildNodes( function $garbageCollectDetachedNodes (line 76) | function $garbageCollectDetachedNodes( FILE: resources/js/wysiwyg/lexical/core/LexicalMutations.ts constant TEXT_MUTATION_VARIANCE (line 34) | const TEXT_MUTATION_VARIANCE = 100; function getIsProcessingMutations (line 39) | function getIsProcessingMutations(): boolean { function updateTimeStamp (line 43) | function updateTimeStamp(event: Event) { function initTextEntryListener (line 47) | function initTextEntryListener(editor: LexicalEditor): void { function isManagedLineBreak (line 53) | function isManagedLineBreak( function getLastSelection (line 66) | function getLastSelection(editor: LexicalEditor): null | BaseSelection { function $handleTextMutation (line 73) | function $handleTextMutation( function shouldUpdateTextNodeFromMutation (line 93) | function shouldUpdateTextNodeFromMutation( function $flushMutations (line 101) | function $flushMutations( function $flushRootMutations (line 296) | function $flushRootMutations(editor: LexicalEditor): void { function initMutationObserver (line 305) | function initMutationObserver(editor: LexicalEditor): void { FILE: resources/js/wysiwyg/lexical/core/LexicalNode.ts type NodeMap (line 52) | type NodeMap = Map; type SerializedLexicalNode (line 54) | type SerializedLexicalNode = { function $removeNode (line 59) | function $removeNode( type DOMConversion (line 125) | type DOMConversion = { type DOMConversionFn (line 130) | type DOMConversionFn = ( type DOMChildConversion (line 134) | type DOMChildConversion = ( type DOMConversionMap (line 139) | type DOMConversionMap = Record< type NodeName (line 143) | type NodeName = string; type DOMConversionOutput (line 156) | type DOMConversionOutput = { type DOMExportOutputMap (line 162) | type DOMExportOutputMap = Map< type DOMExportOutput (line 167) | type DOMExportOutput = { type NodeKey (line 174) | type NodeKey = string; class LexicalNode (line 176) | class LexicalNode { method getType (line 202) | static getType(): string { method clone (line 216) | static clone(_data: unknown): LexicalNode { method afterCloneFrom (line 274) | afterCloneFrom(prevNode: this) { method constructor (line 283) | constructor(key?: NodeKey) { method getType (line 302) | getType(): string { method isInline (line 306) | isInline(): boolean { method isAttached (line 319) | isAttached(): boolean { method isSelected (line 343) | isSelected(selection?: null | BaseSelection): boolean { method shouldSelectDirectly (line 390) | shouldSelectDirectly(): boolean { method getKey (line 397) | getKey(): NodeKey { method getIndexWithinParent (line 405) | getIndexWithinParent(): number { method getParent (line 425) | getParent(): T | null { method getParentOrThrow (line 436) | getParentOrThrow(): T { method getTopLevelElement (line 449) | getTopLevelElement(): ElementNode | DecoratorNode | null { method getTopLevelElementOrThrow (line 470) | getTopLevelElementOrThrow(): ElementNode | DecoratorNode { method getParents (line 487) | getParents(): Array { method getParentKeys (line 502) | getParentKeys(): Array { method getPreviousSibling (line 517) | getPreviousSibling(): T | null { method getPreviousSiblings (line 528) | getPreviousSiblings(): Array { method getNextSibling (line 550) | getNextSibling(): T | null { method getNextSiblings (line 561) | getNextSiblings(): Array { method getCommonAncestor (line 577) | getCommonAncestor( method is (line 609) | is(object: LexicalNode | null | undefined): boolean { method isBefore (line 621) | isBefore(targetNode: LexicalNode): boolean { method isParentOf (line 660) | isParentOf(targetNode: LexicalNode): boolean { method getNodesBetween (line 682) | getNodesBetween(targetNode: LexicalNode): Array { method isDirty (line 752) | isDirty(): boolean { method getLatest (line 763) | getLatest(): this { method getWritable (line 780) | getWritable(): this { method getTextContent (line 813) | getTextContent(): string { method getTextContentSize (line 821) | getTextContentSize(): number { method createDOM (line 839) | createDOM(_config: EditorConfig, _editor: LexicalEditor): HTMLElement { method updateDOM (line 853) | updateDOM( method exportDOM (line 869) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 881) | exportJSON(): SerializedLexicalNode { method importJSON (line 892) | static importJSON(_serializedNode: SerializedLexicalNode): LexicalNode { method transform (line 908) | static transform(): ((node: LexicalNode) => void) | null { method remove (line 922) | remove(preserveEmptyParent?: boolean): void { method replace (line 933) | replace(replaceWith: N, includeChildren?: boole... method insertAfter (line 1003) | insertAfter(nodeToInsert: LexicalNode, restoreSelection = true): Lexic... method insertBefore (line 1070) | insertBefore( method isParentRequired (line 1110) | isParentRequired(): boolean { method createParentElementNode (line 1118) | createParentElementNode(): ElementNode { method selectStart (line 1122) | selectStart(): RangeSelection { method selectEnd (line 1126) | selectEnd(): RangeSelection { method selectPrevious (line 1136) | selectPrevious(anchorOffset?: number, focusOffset?: number): RangeSele... method selectNext (line 1158) | selectNext(anchorOffset?: number, focusOffset?: number): RangeSelection { method markDirty (line 1179) | markDirty(): void { method insertDOMIntoParent (line 1189) | insertDOMIntoParent(nodeDOM: HTMLElement, parentDOM: HTMLElement): boo... function errorOnTypeKlassMismatch (line 1194) | function errorOnTypeKlassMismatch( function insertRangeAfter (line 1226) | function insertRangeAfter( FILE: resources/js/wysiwyg/lexical/core/LexicalNormalization.ts function $canSimpleTextNodesBeMerged (line 15) | function $canSimpleTextNodesBeMerged( function $mergeTextNodes (line 32) | function $mergeTextNodes(node1: TextNode, node2: TextNode): TextNode { function $normalizeTextNode (line 42) | function $normalizeTextNode(textNode: TextNode): void { function $normalizeSelection (line 89) | function $normalizeSelection(selection: RangeSelection): RangeSelection { function $normalizePoint (line 95) | function $normalizePoint(point: PointType): void { FILE: resources/js/wysiwyg/lexical/core/LexicalReconciler.ts type IntentionallyMarkedAsDirtyElement (line 47) | type IntentionallyMarkedAsDirtyElement = boolean; function destroyNode (line 66) | function destroyNode(key: NodeKey, parentDOM: null | HTMLElement): void { function destroyChildren (line 98) | function destroyChildren( function setTextAlign (line 115) | function setTextAlign(domStyle: CSSStyleDeclaration, value: string): void { function $createNode (line 119) | function $createNode( function $createChildren (line 208) | function $createChildren( function isLastChildLineBreakOrDecorator (line 240) | function isLastChildLineBreakOrDecorator( function reconcileElementTerminatingLineBreak (line 249) | function reconcileElementTerminatingLineBreak( function reconcileParagraphFormat (line 299) | function reconcileParagraphFormat(element: ElementNode): void { function reconcileParagraphStyle (line 309) | function reconcileParagraphStyle(element: ElementNode): void { function $reconcileChildrenWithDirection (line 320) | function $reconcileChildrenWithDirection( function createChildrenArray (line 332) | function createChildrenArray( function $reconcileChildren (line 349) | function $reconcileChildren( function $reconcileNode (line 447) | function $reconcileNode( function reconcileDecorator (line 560) | function reconcileDecorator(key: NodeKey, decorator: unknown): void { function getFirstChild (line 575) | function getFirstChild(element: HTMLElement): Node | null { function getNextSibling (line 579) | function getNextSibling(element: HTMLElement): Node | null { function $reconcileNodeChildren (line 590) | function $reconcileNodeChildren( function $reconcileRoot (line 689) | function $reconcileRoot( function storeDOMWithKey (line 745) | function storeDOMWithKey( function getPrevElementByKeyOrThrow (line 756) | function getPrevElementByKeyOrThrow(key: NodeKey): HTMLElement { FILE: resources/js/wysiwyg/lexical/core/LexicalSelection.ts type TextPointType (line 68) | type TextPointType = { type ElementPointType (line 79) | type ElementPointType = { type PointType (line 90) | type PointType = TextPointType | ElementPointType; class Point (line 92) | class Point { method constructor (line 98) | constructor(key: NodeKey, offset: number, type: 'text' | 'element') { method is (line 105) | is(point: PointType): boolean { method isBefore (line 113) | isBefore(b: PointType): boolean { method getNode (line 133) | getNode(): LexicalNode { method set (line 142) | set(key: NodeKey, offset: number, type: 'text' | 'element'): void { function $createPoint (line 160) | function $createPoint( function selectPointOnNode (line 169) | function selectPointOnNode(point: PointType, node: LexicalNode): void { function $moveSelectionPointToEnd (line 196) | function $moveSelectionPointToEnd( function $transferStartingElementPointToTextPoint (line 212) | function $transferStartingElementPointToTextPoint( function $setPointValues (line 238) | function $setPointValues( type BaseSelection (line 249) | interface BaseSelection { class NodeSelection (line 268) | class NodeSelection implements BaseSelection { method constructor (line 273) | constructor(objects: Set) { method getCachedNodes (line 279) | getCachedNodes(): LexicalNode[] | null { method setCachedNodes (line 283) | setCachedNodes(nodes: LexicalNode[] | null): void { method is (line 287) | is(selection: null | BaseSelection): boolean { method isCollapsed (line 296) | isCollapsed(): boolean { method isBackward (line 300) | isBackward(): boolean { method getStartEndPoints (line 304) | getStartEndPoints(): null { method add (line 308) | add(key: NodeKey): void { method delete (line 314) | delete(key: NodeKey): void { method clear (line 320) | clear(): void { method has (line 326) | has(key: NodeKey): boolean { method clone (line 330) | clone(): NodeSelection { method extract (line 334) | extract(): Array { method insertRawText (line 338) | insertRawText(text: string): void { method insertText (line 342) | insertText(): void { method insertNodes (line 346) | insertNodes(nodes: Array) { method getNodes (line 365) | getNodes(): Array { method getTextContent (line 384) | getTextContent(): string { function $isRangeSelection (line 394) | function $isRangeSelection(x: unknown): x is RangeSelection { class RangeSelection (line 398) | class RangeSelection implements BaseSelection { method constructor (line 406) | constructor( method getCachedNodes (line 422) | getCachedNodes(): LexicalNode[] | null { method setCachedNodes (line 426) | setCachedNodes(nodes: LexicalNode[] | null): void { method is (line 436) | is(selection: null | BaseSelection): boolean { method isCollapsed (line 454) | isCollapsed(): boolean { method getNodes (line 464) | getNodes(): Array { method setTextNodeRange (line 524) | setTextNodeRange( method getTextContent (line 541) | getTextContent(): string { method applyDOMRange (line 609) | applyDOMRange(range: StaticRange): void { method clone (line 645) | clone(): RangeSelection { method toggleFormat (line 662) | toggleFormat(format: TextFormatType): void { method setStyle (line 672) | setStyle(style: string): void { method hasFormat (line 684) | hasFormat(type: TextFormatType): boolean { method insertRawText (line 695) | insertRawText(text: string): void { method insertText (line 718) | insertText(text: string): void { method removeText (line 1064) | removeText(): void { method formatText (line 1074) | formatText(formatType: TextFormatType): void { method insertNodes (line 1209) | insertNodes(nodes: Array): void { method insertParagraph (line 1311) | insertParagraph(): ElementNode | null { method insertLineBreak (line 1339) | insertLineBreak(selectStart?: boolean): void { method extract (line 1356) | extract(): Array { method modify (line 1414) | modify( method forwardDeletion (line 1563) | forwardDeletion( method deleteCharacter (line 1595) | deleteCharacter(isBackward: boolean): void { method deleteLine (line 1701) | deleteLine(isBackward: boolean): void { method deleteWord (line 1736) | deleteWord(isBackward: boolean): void { method isBackward (line 1753) | isBackward(): boolean { method getStartEndPoints (line 1757) | getStartEndPoints(): null | [PointType, PointType] { function $isNodeSelection (line 1762) | function $isNodeSelection(x: unknown): x is NodeSelection { function getCharacterOffset (line 1766) | function getCharacterOffset(point: PointType): number { function $getCharacterOffsets (line 1778) | function $getCharacterOffsets( function $swapPoints (line 1797) | function $swapPoints(selection: RangeSelection): void { function moveNativeSelection (line 1809) | function moveNativeSelection( function $updateCaretSelectionForUnicodeCharacter (line 1820) | function $updateCaretSelectionForUnicodeCharacter( function $removeSegment (line 1857) | function $removeSegment( function shouldResolveAncestor (line 1897) | function shouldResolveAncestor( function $internalResolveSelectionPoint (line 1911) | function $internalResolveSelectionPoint( function resolveSelectionPointOnBoundary (line 2028) | function resolveSelectionPointOnBoundary( function $normalizeSelectionPointsForBoundaries (line 2091) | function $normalizeSelectionPointsForBoundaries( function $internalResolveSelectionPoints (line 2130) | function $internalResolveSelectionPoints( function $isBlockElementNode (line 2187) | function $isBlockElementNode( function $internalMakeRangeSelection (line 2197) | function $internalMakeRangeSelection( function $createRangeSelection (line 2217) | function $createRangeSelection(): RangeSelection { function $createNodeSelection (line 2223) | function $createNodeSelection(): NodeSelection { function $internalCreateSelection (line 2227) | function $internalCreateSelection( function $createRangeSelectionFromDom (line 2245) | function $createRangeSelectionFromDom( function $internalCreateRangeSelection (line 2252) | function $internalCreateRangeSelection( function $getSelection (line 2332) | function $getSelection(): null | BaseSelection { function $getPreviousSelection (line 2337) | function $getPreviousSelection(): null | BaseSelection { function $updateElementSelectionOnCreateDeleteNode (line 2342) | function $updateElementSelectionOnCreateDeleteNode( function $updateSelectionResolveTextNodes (line 2407) | function $updateSelectionResolveTextNodes(selection: RangeSelection): vo... function applySelectionTransforms (line 2463) | function applySelectionTransforms( function moveSelectionPointToSibling (line 2488) | function moveSelectionPointToSibling( function adjustPointOffsetForMergedSibling (line 2529) | function adjustPointOffsetForMergedSibling( function updateDOMSelection (line 2546) | function updateDOMSelection( function $insertNodes (line 2723) | function $insertNodes(nodes: Array) { function $getTextContent (line 2732) | function $getTextContent(): string { function $removeTextAndSplitBlock (line 2740) | function $removeTextAndSplitBlock(selection: RangeSelection): number { function $splitNodeAtPoint (line 2768) | function $splitNodeAtPoint( function $wrapInlineNodes (line 2811) | function $wrapInlineNodes(nodes: LexicalNode[]) { FILE: resources/js/wysiwyg/lexical/core/LexicalUpdates.ts function isCurrentlyReadOnlyMode (line 72) | function isCurrentlyReadOnlyMode(): boolean { function errorOnReadOnly (line 79) | function errorOnReadOnly(): void { function errorOnInfiniteTransforms (line 85) | function errorOnInfiniteTransforms(): void { function getActiveEditorState (line 94) | function getActiveEditorState(): EditorState { function getActiveEditor (line 109) | function getActiveEditor(): LexicalEditor { function collectBuildInformation (line 123) | function collectBuildInformation(): string { function internalGetActiveEditor (line 156) | function internalGetActiveEditor(): LexicalEditor | null { function internalGetActiveEditorState (line 160) | function internalGetActiveEditorState(): EditorState | null { function $applyTransforms (line 164) | function $applyTransforms( function $isNodeValidForTransform (line 189) | function $isNodeValidForTransform( function $normalizeAllDirtyTextNodes (line 201) | function $normalizeAllDirtyTextNodes( function $applyAllTransforms (line 232) | function $applyAllTransforms( type InternalSerializedNode (line 323) | type InternalSerializedNode = { function $parseSerializedNode (line 329) | function $parseSerializedNode( function $parseSerializedNodeImpl (line 339) | function $parseSerializedNodeImpl< function parseEditorState (line 379) | function parseEditorState( function readEditorState (line 435) | function readEditorState( function handleDEVOnlyPendingUpdateGuarantees (line 457) | function handleDEVOnlyPendingUpdateGuarantees( function $commitPendingUpdates (line 477) | function $commitPendingUpdates( function triggerTextContentListeners (line 685) | function triggerTextContentListeners( function triggerMutationListeners (line 698) | function triggerMutationListeners( function triggerListeners (line 721) | function triggerListeners( function triggerCommandListeners (line 741) | function triggerCommandListeners< function $triggerEnqueuedUpdates (line 784) | function $triggerEnqueuedUpdates(editor: LexicalEditor): void { function triggerDeferredUpdateCallbacks (line 796) | function triggerDeferredUpdateCallbacks( function processNestedUpdates (line 816) | function processNestedUpdates( function $beginUpdate (line 866) | function $beginUpdate( function updateEditor (line 1025) | function updateEditor( FILE: resources/js/wysiwyg/lexical/core/LexicalUtils.ts function resetRandomKey (line 79) | function resetRandomKey(): void { function generateRandomKey (line 83) | function generateRandomKey(): string { function getRegisteredNodeOrThrow (line 87) | function getRegisteredNodeOrThrow( function $isSelectionCapturedInDecorator (line 108) | function $isSelectionCapturedInDecorator(node: Node): boolean { function isSelectionCapturedInDecoratorInput (line 112) | function isSelectionCapturedInDecoratorInput(anchorDOM: Node): boolean { function isSelectionWithinEditor (line 129) | function isSelectionWithinEditor( function isLexicalEditor (line 153) | function isLexicalEditor(editor: unknown): editor is LexicalEditor { function getNearestEditorFromDOMNode (line 158) | function getNearestEditorFromDOMNode( function getEditorPropertyFromDOMNode (line 173) | function getEditorPropertyFromDOMNode(node: Node | null): unknown { function getTextDirection (line 178) | function getTextDirection(text: string): 'ltr' | 'rtl' | null { function $isTokenOrSegmented (line 188) | function $isTokenOrSegmented(node: TextNode): boolean { function isDOMNodeLexicalTextNode (line 192) | function isDOMNodeLexicalTextNode(node: Node): node is Text { function getDOMTextNode (line 196) | function getDOMTextNode(element: Node | null): Text | null { function toggleTextFormatType (line 207) | function toggleTextFormatType( function $isLeafNode (line 228) | function $isLeafNode( function $setNodeKey (line 234) | function $setNodeKey( function errorOnNodeKeyConstructorMismatch (line 262) | function errorOnNodeKeyConstructorMismatch( type IntentionallyMarkedAsDirtyElement (line 291) | type IntentionallyMarkedAsDirtyElement = boolean; function internalMarkParentElementsAsDirty (line 293) | function internalMarkParentElementsAsDirty( function removeFromParent (line 313) | function removeFromParent(node: LexicalNode): void { function internalMarkNodeAsDirty (line 366) | function internalMarkNodeAsDirty(node: LexicalNode): void { function internalMarkSiblingsAsDirty (line 387) | function internalMarkSiblingsAsDirty(node: LexicalNode) { function $setCompositionKey (line 398) | function $setCompositionKey(compositionKey: null | NodeKey): void { function $getCompositionKey (line 419) | function $getCompositionKey(): null | NodeKey { function $getNodeByKey (line 427) | function $getNodeByKey( function $getNodeFromDOMNode (line 439) | function $getNodeFromDOMNode( function $getNearestNodeFromDOMNode (line 452) | function $getNearestNodeFromDOMNode( function cloneDecorators (line 467) | function cloneDecorators( function getEditorStateTextContent (line 476) | function getEditorStateTextContent(editorState: EditorState): string { function markAllNodesAsDirty (line 480) | function markAllNodesAsDirty(editor: LexicalEditor, type: string): void { function $getRoot (line 506) | function $getRoot(): RootNode { function internalGetRoot (line 510) | function internalGetRoot(editorState: EditorState): RootNode { function $setSelection (line 514) | function $setSelection(selection: null | BaseSelection): void { function $flushMutations (line 532) | function $flushMutations(): void { function $getNodeFromDOM (line 538) | function $getNodeFromDOM(dom: Node): null | LexicalNode { function getTextNodeOffset (line 551) | function getTextNodeOffset( function getNodeKeyFromDOM (line 558) | function getNodeKeyFromDOM( function doesContainGrapheme (line 575) | function doesContainGrapheme(str: string): boolean { function getEditorsToPropagate (line 579) | function getEditorsToPropagate( function createUID (line 591) | function createUID(): string { function getAnchorTextFromDOM (line 598) | function getAnchorTextFromDOM(anchorNode: Node): null | string { function $updateSelectedTextFromDOM (line 605) | function $updateSelectedTextFromDOM( function $updateTextNodeFromDOMContent (line 642) | function $updateTextNodeFromDOMContent( function $previousSiblingDoesNotAcceptText (line 733) | function $previousSiblingDoesNotAcceptText(node: TextNode): boolean { function $shouldInsertTextAfterOrBeforeTextNode (line 746) | function $shouldInsertTextAfterOrBeforeTextNode( function isTab (line 777) | function isTab( function isBold (line 786) | function isBold( function isItalic (line 797) | function isItalic( function isUnderline (line 808) | function isUnderline( function isParagraph (line 819) | function isParagraph(key: string, shiftKey: boolean): boolean { function isLineBreak (line 823) | function isLineBreak(key: string, shiftKey: boolean): boolean { function isOpenLineBreak (line 829) | function isOpenLineBreak(key: string, ctrlKey: boolean): boolean { function isDeleteWordBackward (line 834) | function isDeleteWordBackward( function isDeleteWordForward (line 842) | function isDeleteWordForward( function isDeleteLineBackward (line 850) | function isDeleteLineBackward(key: string, metaKey: boolean): boolean { function isDeleteLineForward (line 854) | function isDeleteLineForward(key: string, metaKey: boolean): boolean { function isDeleteBackward (line 858) | function isDeleteBackward( function isDeleteForward (line 876) | function isDeleteForward( function isUndo (line 895) | function isUndo( function isRedo (line 906) | function isRedo( function isCopy (line 921) | function isCopy( function isCut (line 937) | function isCut( function isArrowLeft (line 953) | function isArrowLeft(key: string): boolean { function isArrowRight (line 957) | function isArrowRight(key: string): boolean { function isArrowUp (line 961) | function isArrowUp(key: string): boolean { function isArrowDown (line 965) | function isArrowDown(key: string): boolean { function isMoveBackward (line 969) | function isMoveBackward( function isMoveToStart (line 978) | function isMoveToStart( function isMoveForward (line 988) | function isMoveForward( function isMoveToEnd (line 997) | function isMoveToEnd( function isMoveUp (line 1007) | function isMoveUp( function isMoveDown (line 1015) | function isMoveDown( function isModifier (line 1023) | function isModifier( function isSpace (line 1032) | function isSpace(key: string): boolean { function controlOrMeta (line 1036) | function controlOrMeta(metaKey: boolean, ctrlKey: boolean): boolean { function isReturn (line 1043) | function isReturn(key: string): boolean { function isBackspace (line 1047) | function isBackspace(key: string): boolean { function isEscape (line 1051) | function isEscape(key: string): boolean { function isDelete (line 1055) | function isDelete(key: string): boolean { function isAt (line 1059) | function isAt(key: string): boolean { function isSelectAll (line 1063) | function isSelectAll( function $selectAll (line 1071) | function $selectAll(): void { function getCachedClassNameArray (line 1077) | function getCachedClassNameArray( function setMutatedNode (line 1103) | function setMutatedNode( function $nodesOfType (line 1136) | function $nodesOfType(klass: Klass): Array { function resolveElement (line 1159) | function resolveElement( function $getAdjacentNode (line 1179) | function $getAdjacentNode( function isFirefoxClipboardEvents (line 1209) | function isFirefoxClipboardEvents(editor: LexicalEditor): boolean { function dispatchCommand (line 1218) | function dispatchCommand>( function $textContentRequiresDoubleLinebreakAtEnd (line 1226) | function $textContentRequiresDoubleLinebreakAtEnd( function getElementByKeyOrThrow (line 1232) | function getElementByKeyOrThrow( function getParentElement (line 1249) | function getParentElement(node: Node): HTMLElement | null { function scrollIntoViewIfNeeded (line 1257) | function scrollIntoViewIfNeeded( function $hasUpdateTag (line 1310) | function $hasUpdateTag(tag: string): boolean { function $addUpdateTag (line 1315) | function $addUpdateTag(tag: string): void { function $maybeMoveChildrenSelectionToParent (line 1321) | function $maybeMoveChildrenSelectionToParent( function $hasAncestor (line 1340) | function $hasAncestor( function getDefaultView (line 1354) | function getDefaultView(domElem: HTMLElement): Window | null { function getWindow (line 1359) | function getWindow(editor: LexicalEditor): Window { function $isInlineElementOrDecoratorNode (line 1367) | function $isInlineElementOrDecoratorNode(node: LexicalNode): boolean { function $getNearestRootOrShadowRoot (line 1374) | function $getNearestRootOrShadowRoot( type ShadowRootNode (line 1390) | type ShadowRootNode = Spread< function $isRootOrShadowRoot (line 1394) | function $isRootOrShadowRoot( function $copyNode (line 1406) | function $copyNode(node: T): T { function $applyNodeReplacement (line 1412) | function $applyNodeReplacement( function errorOnInsertTextNodeOnRoot (line 1438) | function errorOnInsertTextNodeOnRoot( function $getNodeByKeyOrThrow (line 1455) | function $getNodeByKeyOrThrow(key: NodeKey): N { function createBlockCursorElement (line 1467) | function createBlockCursorElement(editorConfig: EditorConfig): HTMLDivEl... function needsBlockCursor (line 1486) | function needsBlockCursor(node: null | LexicalNode): boolean { function removeDOMBlockCursorElement (line 1493) | function removeDOMBlockCursorElement( function updateDOMBlockCursorElement (line 1506) | function updateDOMBlockCursorElement( function getDOMSelection (line 1566) | function getDOMSelection(targetWindow: null | Window): null | Selection { function $splitNode (line 1570) | function $splitNode( function $findMatchingParent (line 1618) | function $findMatchingParent( function isHTMLAnchorElement (line 1639) | function isHTMLAnchorElement(x: Node): x is HTMLAnchorElement { function isHTMLElement (line 1647) | function isHTMLElement(x: Node | EventTarget): x is HTMLElement { function isInlineDomNode (line 1657) | function isInlineDomNode(node: Node) { function isBlockDomNode (line 1670) | function isBlockDomNode(node: Node) { function INTERNAL_$isBlock (line 1682) | function INTERNAL_$isBlock( function $getAncestor (line 1702) | function $getAncestor( function $getEditor (line 1717) | function $getEditor(): LexicalEditor { type TypeToNodeMap (line 1722) | type TypeToNodeMap = Map; constant EMPTY_TYPE_TO_NODE_MAP (line 1728) | const EMPTY_TYPE_TO_NODE_MAP: TypeToNodeMap = new Map(); function getCachedTypeToNodeMap (line 1729) | function getCachedTypeToNodeMap( function $cloneWithProperties (line 1771) | function $cloneWithProperties(latestNode: T): T { FILE: resources/js/wysiwyg/lexical/core/__tests__/unit/LexicalEditor.test.ts function setContainerChild (line 59) | function setContainerChild(el: HTMLElement) { function useLexicalEditor (line 77) | function useLexicalEditor( function init (line 99) | function init(onError?: (error: Error) => void) { function update (line 107) | async function update(fn: () => void) { function runUpdate (line 931) | function runUpdate(changeElement: boolean) { function reset (line 1214) | async function reset() { function $createElementNodeWithText (line 1225) | function $createElementNodeWithText(text: string) { function $createElementNodeWithText (line 1280) | function $createElementNodeWithText(text: string) { function $createElementNodeWithText (line 1315) | function $createElementNodeWithText(text: string) { function TestBase (line 1667) | function TestBase() { function TestBase (line 1764) | function TestBase() { function asymmetricMatcher (line 2125) | function asymmetricMatcher(asymmetricMatch: (x: T) => boolean) { class CustomParagraphNode (line 2521) | class CustomParagraphNode extends ParagraphNode { method getType (line 2522) | static getType() { method clone (line 2526) | static clone(node: CustomParagraphNode) { method importJSON (line 2530) | static importJSON() { method exportJSON (line 2534) | exportJSON() { FILE: resources/js/wysiwyg/lexical/core/__tests__/unit/LexicalNode.test.ts class TestNode (line 38) | class TestNode extends LexicalNode { method getType (line 39) | static getType(): string { method clone (line 43) | static clone(node: TestNode) { method createDOM (line 47) | createDOM() { method importJSON (line 51) | static importJSON() { method exportJSON (line 55) | exportJSON() { class InlineDecoratorNode (line 60) | class InlineDecoratorNode extends DecoratorNode { method getType (line 61) | static getType(): string { method clone (line 65) | static clone(): InlineDecoratorNode { method importJSON (line 69) | static importJSON() { method exportJSON (line 73) | exportJSON() { method createDOM (line 77) | createDOM(): HTMLElement { method isInline (line 81) | isInline(): true { method isParentRequired (line 85) | isParentRequired(): true { method decorate (line 89) | decorate() { class VersionedTextNode (line 157) | class VersionedTextNode extends TextNode { method getType (line 160) | static getType(): 'vtext' { method clone (line 163) | static clone(node: VersionedTextNode): VersionedTextNode { method importJSON (line 166) | static importJSON(node: SerializedTextNode): VersionedTextNode { method exportJSON (line 169) | exportJSON(): SerializedTextNode { method afterCloneFrom (line 172) | afterCloneFrom(node: this): void { method onError (line 179) | onError(err) { method update (line 415) | update() { method update (line 422) | update() { method update (line 429) | update() { method update (line 438) | update() { method update (line 447) | update() { method update (line 456) | update() { method update (line 463) | update() { method update (line 470) | update() { method update (line 479) | update() { method update (line 486) | update() { FILE: resources/js/wysiwyg/lexical/core/__tests__/unit/LexicalSerialization.test.ts function $createEditorContent (line 18) | function $createEditorContent() { FILE: resources/js/wysiwyg/lexical/core/__tests__/utils/index.ts type TestEnv (line 43) | type TestEnv = { function initializeUnitTest (line 53) | function initializeUnitTest( function initializeClipboard (line 113) | function initializeClipboard() { type SerializedTestElementNode (line 122) | type SerializedTestElementNode = SerializedElementNode; class TestElementNode (line 124) | class TestElementNode extends ElementNode { method getType (line 125) | static getType(): string { method clone (line 129) | static clone(node: TestElementNode) { method importJSON (line 133) | static importJSON( method exportJSON (line 141) | exportJSON(): SerializedTestElementNode { method createDOM (line 149) | createDOM() { method updateDOM (line 153) | updateDOM() { function $createTestElementNode (line 158) | function $createTestElementNode(): TestElementNode { type SerializedTestTextNode (line 162) | type SerializedTestTextNode = SerializedTextNode; class TestTextNode (line 164) | class TestTextNode extends TextNode { method getType (line 165) | static getType() { method clone (line 169) | static clone(node: TestTextNode): TestTextNode { method importJSON (line 173) | static importJSON(serializedNode: SerializedTestTextNode): TestTextNode { method exportJSON (line 177) | exportJSON(): SerializedTestTextNode { type SerializedTestInlineElementNode (line 186) | type SerializedTestInlineElementNode = SerializedElementNode; class TestInlineElementNode (line 188) | class TestInlineElementNode extends ElementNode { method getType (line 189) | static getType(): string { method clone (line 193) | static clone(node: TestInlineElementNode) { method importJSON (line 197) | static importJSON( method exportJSON (line 205) | exportJSON(): SerializedTestInlineElementNode { method createDOM (line 213) | createDOM() { method updateDOM (line 217) | updateDOM() { method isInline (line 221) | isInline() { function $createTestInlineElementNode (line 226) | function $createTestInlineElementNode(): TestInlineElementNode { type SerializedTestShadowRootNode (line 230) | type SerializedTestShadowRootNode = SerializedElementNode; class TestShadowRootNode (line 232) | class TestShadowRootNode extends ElementNode { method getType (line 233) | static getType(): string { method clone (line 237) | static clone(node: TestShadowRootNode) { method importJSON (line 241) | static importJSON( method exportJSON (line 249) | exportJSON(): SerializedTestShadowRootNode { method createDOM (line 257) | createDOM() { method updateDOM (line 261) | updateDOM() { method isShadowRoot (line 265) | isShadowRoot() { function $createTestShadowRootNode (line 270) | function $createTestShadowRootNode(): TestShadowRootNode { type SerializedTestSegmentedNode (line 274) | type SerializedTestSegmentedNode = SerializedTextNode; class TestSegmentedNode (line 276) | class TestSegmentedNode extends TextNode { method getType (line 277) | static getType(): string { method clone (line 281) | static clone(node: TestSegmentedNode): TestSegmentedNode { method importJSON (line 285) | static importJSON( method exportJSON (line 296) | exportJSON(): SerializedTestSegmentedNode { function $createTestSegmentedNode (line 305) | function $createTestSegmentedNode(text: string): TestSegmentedNode { type SerializedTestExcludeFromCopyElementNode (line 309) | type SerializedTestExcludeFromCopyElementNode = SerializedElementNode; class TestExcludeFromCopyElementNode (line 311) | class TestExcludeFromCopyElementNode extends ElementNode { method getType (line 312) | static getType(): string { method clone (line 316) | static clone(node: TestExcludeFromCopyElementNode) { method importJSON (line 320) | static importJSON( method exportJSON (line 328) | exportJSON(): SerializedTestExcludeFromCopyElementNode { method createDOM (line 336) | createDOM() { method updateDOM (line 340) | updateDOM() { method excludeFromCopy (line 344) | excludeFromCopy() { function $createTestExcludeFromCopyElementNode (line 349) | function $createTestExcludeFromCopyElementNode(): TestExcludeFromCopyEle... type SerializedTestDecoratorNode (line 353) | type SerializedTestDecoratorNode = SerializedLexicalNode; class TestDecoratorNode (line 355) | class TestDecoratorNode extends DecoratorNode { method getType (line 356) | static getType(): string { method clone (line 360) | static clone(node: TestDecoratorNode) { method importJSON (line 364) | static importJSON( method exportJSON (line 370) | exportJSON(): SerializedTestDecoratorNode { method importDOM (line 378) | static importDOM() { method exportDOM (line 388) | exportDOM() { method getTextContent (line 394) | getTextContent() { method createDOM (line 398) | createDOM() { method updateDOM (line 402) | updateDOM() { method decorate (line 406) | decorate() { function $createTestDecoratorNode (line 413) | function $createTestDecoratorNode(): TestDecoratorNode { constant DEFAULT_NODES (line 417) | const DEFAULT_NODES: NonNullable | Lexi... function createTestEditor (line 437) | function createTestEditor( function createTestHeadlessEditor (line 463) | function createTestHeadlessEditor( function createTestContext (line 474) | function createTestContext(): EditorUiContext { function destroyFromContext (line 516) | function destroyFromContext(context: EditorUiContext) { function $assertRangeSelection (line 520) | function $assertRangeSelection(selection: unknown): RangeSelection { function invariant (line 527) | function invariant(cond?: boolean, message?: string): asserts cond { class ClipboardDataMock (line 534) | class ClipboardDataMock { method constructor (line 538) | constructor() { class DataTransferMock (line 544) | class DataTransferMock implements DataTransfer { method dropEffect (line 546) | get dropEffect(): DataTransfer['dropEffect'] { method effectAllowed (line 549) | get effectAllowed(): DataTransfer['effectAllowed'] { method files (line 552) | get files(): FileList { method items (line 555) | get items(): DataTransferItemList { method types (line 558) | get types(): ReadonlyArray { method clearData (line 561) | clearData(dataType?: string): void { method getData (line 564) | getData(dataType: string): string { method setData (line 567) | setData(dataType: string, data: string): void { method setDragImage (line 570) | setDragImage(image: Element, x: number, y: number): void { class EventMock (line 575) | class EventMock implements Event { method bubbles (line 576) | get bubbles(): boolean { method cancelBubble (line 579) | get cancelBubble(): boolean { method cancelable (line 582) | get cancelable(): boolean { method composed (line 585) | get composed(): boolean { method currentTarget (line 588) | get currentTarget(): EventTarget | null { method defaultPrevented (line 591) | get defaultPrevented(): boolean { method eventPhase (line 594) | get eventPhase(): number { method isTrusted (line 597) | get isTrusted(): boolean { method returnValue (line 600) | get returnValue(): boolean { method srcElement (line 603) | get srcElement(): EventTarget | null { method target (line 606) | get target(): EventTarget | null { method timeStamp (line 609) | get timeStamp(): number { method type (line 612) | get type(): string { method composedPath (line 615) | composedPath(): EventTarget[] { method initEvent (line 618) | initEvent( method stopImmediatePropagation (line 625) | stopImmediatePropagation(): void { method stopPropagation (line 628) | stopPropagation(): void { method preventDefault (line 635) | preventDefault() { class KeyboardEventMock (line 640) | class KeyboardEventMock extends EventMock implements KeyboardEvent { method charCode (line 642) | get charCode(): number { method code (line 645) | get code(): string { method isComposing (line 649) | get isComposing(): boolean { method key (line 652) | get key(): string { method keyCode (line 655) | get keyCode(): number { method location (line 658) | get location(): number { method repeat (line 662) | get repeat(): boolean { method constructor (line 666) | constructor(type: void | string) { method getModifierState (line 669) | getModifierState(keyArg: string): boolean { method initKeyboardEvent (line 672) | initKeyboardEvent( method detail (line 690) | get detail(): number { method view (line 693) | get view(): Window | null { method which (line 696) | get which(): number { method initUIEvent (line 699) | initUIEvent( function tabKeyboardEvent (line 710) | function tabKeyboardEvent() { function shiftTabKeyboardEvent (line 714) | function shiftTabKeyboardEvent() { function generatePermutations (line 720) | function generatePermutations( function html (line 752) | function html( function expectHtmlToBeEqual (line 766) | function expectHtmlToBeEqual(expected: string, actual: string): void { type nodeTextShape (line 770) | type nodeTextShape = { type nodeShape (line 775) | type nodeShape = { function getNodeShape (line 780) | function getNodeShape(node: SerializedLexicalNode): nodeShape|nodeTextSh... function expectNodeShapeToMatch (line 806) | function expectNodeShapeToMatch(editor: LexicalEditor, expected: nodeSha... function expectEditorStateJSONPropToEqual (line 817) | function expectEditorStateJSONPropToEqual(editor: LexicalEditor, propPat... function formatHtml (line 836) | function formatHtml(s: string): string { function dispatchKeydownEventForNode (line 840) | function dispatchKeydownEventForNode(node: LexicalNode, editor: LexicalE... function dispatchKeydownEventForSelectedNode (line 851) | function dispatchKeydownEventForSelectedNode(editor: LexicalEditor, key:... function dispatchEditorMouseClick (line 860) | function dispatchEditorMouseClick(editor: LexicalEditor, clientX: number... function patchRange (line 876) | function patchRange() { FILE: resources/js/wysiwyg/lexical/core/nodes/ArtificialNode.ts class ArtificialNode__DO_NOT_USE (line 13) | class ArtificialNode__DO_NOT_USE extends ElementNode { method getType (line 14) | static getType(): string { method createDOM (line 18) | createDOM(config: EditorConfig): HTMLElement { FILE: resources/js/wysiwyg/lexical/core/nodes/CommonBlockNode.ts type SerializedCommonBlockNode (line 6) | type SerializedCommonBlockNode = Spread<{ class CommonBlockNode (line 12) | class CommonBlockNode extends ElementNode implements CommonBlockInterface { method setId (line 17) | setId(id: string) { method getId (line 22) | getId(): string { method setAlignment (line 27) | setAlignment(alignment: CommonBlockAlignment) { method getAlignment (line 32) | getAlignment(): CommonBlockAlignment { method setInset (line 37) | setInset(size: number) { method getInset (line 42) | getInset(): number { method exportJSON (line 47) | exportJSON(): SerializedCommonBlockNode { function copyCommonBlockProperties (line 57) | function copyCommonBlockProperties(from: CommonBlockNode, to: CommonBloc... FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalDecoratorNode.ts type DecoratorNode (line 19) | interface DecoratorNode { method constructor (line 28) | constructor(key?: NodeKey) { method decorate (line 35) | decorate(editor: LexicalEditor, config: EditorConfig): T { method isIsolated (line 39) | isIsolated(): boolean { method isInline (line 43) | isInline(): boolean { method isKeyboardSelectable (line 47) | isKeyboardSelectable(): boolean { class DecoratorNode (line 26) | class DecoratorNode extends LexicalNode { method constructor (line 28) | constructor(key?: NodeKey) { method decorate (line 35) | decorate(editor: LexicalEditor, config: EditorConfig): T { method isIsolated (line 39) | isIsolated(): boolean { method isInline (line 43) | isInline(): boolean { method isKeyboardSelectable (line 47) | isKeyboardSelectable(): boolean { function $isDecoratorNode (line 52) | function $isDecoratorNode( FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalElementNode.ts type SerializedElementNode (line 39) | type SerializedElementNode< type ElementNode (line 50) | interface ElementNode { method constructor (line 70) | constructor(key?: NodeKey) { method afterCloneFrom (line 79) | afterCloneFrom(prevNode: this) { method getStyle (line 88) | getStyle(): string { method getChildren (line 92) | getChildren(): Array { method getChildrenKeys (line 101) | getChildrenKeys(): Array { method getChildrenSize (line 110) | getChildrenSize(): number { method isEmpty (line 114) | isEmpty(): boolean { method isDirty (line 117) | isDirty(): boolean { method isLastChild (line 122) | isLastChild(): boolean { method getAllTextNodes (line 127) | getAllTextNodes(): Array { method getFirstDescendant (line 142) | getFirstDescendant(): null | T { method getFirstSelectableDescendant (line 153) | getFirstSelectableDescendant(): null | T { method getLastDescendant (line 167) | getLastDescendant(): null | T { method getLastSelectableDescendant (line 178) | getLastSelectableDescendant(): null | T { method getDescendantByIndex (line 192) | getDescendantByIndex(index: number): null | T { method getFirstChild (line 212) | getFirstChild(): null | T { method getFirstChildOrThrow (line 217) | getFirstChildOrThrow(): T { method getLastChild (line 224) | getLastChild(): null | T { method getLastChildOrThrow (line 229) | getLastChildOrThrow(): T { method getChildAtIndex (line 236) | getChildAtIndex(index: number): null | T { method getTextContent (line 263) | getTextContent(): string { method getTextContentSize (line 280) | getTextContentSize(): number { method getDirection (line 297) | getDirection(): 'ltr' | 'rtl' | null { method select (line 304) | select(_anchorOffset?: number, _focusOffset?: number): RangeSelection { method selectStart (line 349) | selectStart(): RangeSelection { method selectEnd (line 353) | selectEnd(): RangeSelection { method clear (line 357) | clear(): this { method append (line 363) | append(...nodesToAppend: LexicalNode[]): this { method setDirection (line 366) | setDirection(direction: 'ltr' | 'rtl' | null): this { method setStyle (line 371) | setStyle(style: string): this { method splice (line 376) | splice( method exportJSON (line 507) | exportJSON(): SerializedElementNode { method insertNewAfter (line 516) | insertNewAfter( method canIndent (line 522) | canIndent(): boolean { method collapseAtStart (line 530) | collapseAtStart(selection: RangeSelection): boolean { method excludeFromCopy (line 533) | excludeFromCopy(destination?: 'clone' | 'html'): boolean { method canReplaceWith (line 537) | canReplaceWith(replacement: LexicalNode): boolean { method canInsertAfter (line 541) | canInsertAfter(node: LexicalNode): boolean { method canBeEmpty (line 544) | canBeEmpty(): boolean { method canInsertTextBefore (line 547) | canInsertTextBefore(): boolean { method canInsertTextAfter (line 550) | canInsertTextAfter(): boolean { method isInline (line 553) | isInline(): boolean { method isShadowRoot (line 560) | isShadowRoot(): boolean { method canMergeWith (line 564) | canMergeWith(node: ElementNode): boolean { method extractWithChild (line 567) | extractWithChild( method canMergeWhenEmpty (line 588) | canMergeWhenEmpty(): boolean { class ElementNode (line 57) | class ElementNode extends LexicalNode { method constructor (line 70) | constructor(key?: NodeKey) { method afterCloneFrom (line 79) | afterCloneFrom(prevNode: this) { method getStyle (line 88) | getStyle(): string { method getChildren (line 92) | getChildren(): Array { method getChildrenKeys (line 101) | getChildrenKeys(): Array { method getChildrenSize (line 110) | getChildrenSize(): number { method isEmpty (line 114) | isEmpty(): boolean { method isDirty (line 117) | isDirty(): boolean { method isLastChild (line 122) | isLastChild(): boolean { method getAllTextNodes (line 127) | getAllTextNodes(): Array { method getFirstDescendant (line 142) | getFirstDescendant(): null | T { method getFirstSelectableDescendant (line 153) | getFirstSelectableDescendant(): null | T { method getLastDescendant (line 167) | getLastDescendant(): null | T { method getLastSelectableDescendant (line 178) | getLastSelectableDescendant(): null | T { method getDescendantByIndex (line 192) | getDescendantByIndex(index: number): null | T { method getFirstChild (line 212) | getFirstChild(): null | T { method getFirstChildOrThrow (line 217) | getFirstChildOrThrow(): T { method getLastChild (line 224) | getLastChild(): null | T { method getLastChildOrThrow (line 229) | getLastChildOrThrow(): T { method getChildAtIndex (line 236) | getChildAtIndex(index: number): null | T { method getTextContent (line 263) | getTextContent(): string { method getTextContentSize (line 280) | getTextContentSize(): number { method getDirection (line 297) | getDirection(): 'ltr' | 'rtl' | null { method select (line 304) | select(_anchorOffset?: number, _focusOffset?: number): RangeSelection { method selectStart (line 349) | selectStart(): RangeSelection { method selectEnd (line 353) | selectEnd(): RangeSelection { method clear (line 357) | clear(): this { method append (line 363) | append(...nodesToAppend: LexicalNode[]): this { method setDirection (line 366) | setDirection(direction: 'ltr' | 'rtl' | null): this { method setStyle (line 371) | setStyle(style: string): this { method splice (line 376) | splice( method exportJSON (line 507) | exportJSON(): SerializedElementNode { method insertNewAfter (line 516) | insertNewAfter( method canIndent (line 522) | canIndent(): boolean { method collapseAtStart (line 530) | collapseAtStart(selection: RangeSelection): boolean { method excludeFromCopy (line 533) | excludeFromCopy(destination?: 'clone' | 'html'): boolean { method canReplaceWith (line 537) | canReplaceWith(replacement: LexicalNode): boolean { method canInsertAfter (line 541) | canInsertAfter(node: LexicalNode): boolean { method canBeEmpty (line 544) | canBeEmpty(): boolean { method canInsertTextBefore (line 547) | canInsertTextBefore(): boolean { method canInsertTextAfter (line 550) | canInsertTextAfter(): boolean { method isInline (line 553) | isInline(): boolean { method isShadowRoot (line 560) | isShadowRoot(): boolean { method canMergeWith (line 564) | canMergeWith(node: ElementNode): boolean { method extractWithChild (line 567) | extractWithChild( method canMergeWhenEmpty (line 588) | canMergeWhenEmpty(): boolean { function $isElementNode (line 593) | function $isElementNode( function isPointRemoved (line 599) | function isPointRemoved( FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalLineBreakNode.ts type SerializedLineBreakNode (line 21) | type SerializedLineBreakNode = SerializedLexicalNode; class LineBreakNode (line 24) | class LineBreakNode extends LexicalNode { method getType (line 26) | static getType(): string { method clone (line 30) | static clone(node: LineBreakNode): LineBreakNode { method constructor (line 34) | constructor(key?: NodeKey) { method getTextContent (line 38) | getTextContent(): '\n' { method createDOM (line 42) | createDOM(): HTMLElement { method updateDOM (line 46) | updateDOM(): false { method importDOM (line 50) | static importDOM(): DOMConversionMap | null { method importJSON (line 64) | static importJSON( method exportJSON (line 70) | exportJSON(): SerializedLexicalNode { function $convertLineBreakElement (line 78) | function $convertLineBreakElement(node: Node): DOMConversionOutput { function $createLineBreakNode (line 82) | function $createLineBreakNode(): LineBreakNode { function $isLineBreakNode (line 86) | function $isLineBreakNode( function isOnlyChildInBlockNode (line 92) | function isOnlyChildInBlockNode(node: Node): boolean { function isLastChildInBlockNode (line 113) | function isLastChildInBlockNode(node: Node): boolean { function isWhitespaceDomTextNode (line 137) | function isWhitespaceDomTextNode(node: Node): boolean { FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalParagraphNode.ts type SerializedParagraphNode (line 37) | type SerializedParagraphNode = Spread< class ParagraphNode (line 46) | class ParagraphNode extends CommonBlockNode { method constructor (line 52) | constructor(key?: NodeKey) { method getType (line 58) | static getType(): string { method getTextFormat (line 62) | getTextFormat(): number { method setTextFormat (line 67) | setTextFormat(type: number): this { method hasTextFormat (line 73) | hasTextFormat(type: TextFormatType): boolean { method getTextStyle (line 78) | getTextStyle(): string { method setTextStyle (line 83) | setTextStyle(style: string): this { method clone (line 89) | static clone(node: ParagraphNode): ParagraphNode { method afterCloneFrom (line 93) | afterCloneFrom(prevNode: this) { method createDOM (line 102) | createDOM(config: EditorConfig): HTMLElement { method updateDOM (line 114) | updateDOM( method importDOM (line 122) | static importDOM(): DOMConversionMap | null { method exportDOM (line 131) | exportDOM(editor: LexicalEditor): DOMExportOutput { method importJSON (line 145) | static importJSON(serializedNode: SerializedParagraphNode): ParagraphN... method exportJSON (line 152) | exportJSON(): SerializedParagraphNode { method insertNewAfter (line 164) | insertNewAfter( method collapseAtStart (line 178) | collapseAtStart(): boolean { function $convertParagraphElement (line 203) | function $convertParagraphElement(element: HTMLElement): DOMConversionOu... function $createParagraphNode (line 209) | function $createParagraphNode(): ParagraphNode { function $isParagraphNode (line 213) | function $isParagraphNode( FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalRootNode.ts type SerializedRootNode (line 20) | type SerializedRootNode< class RootNode (line 25) | class RootNode extends ElementNode { method getType (line 29) | static getType(): string { method clone (line 33) | static clone(): RootNode { method constructor (line 37) | constructor() { method getTopLevelElementOrThrow (line 42) | getTopLevelElementOrThrow(): never { method getTextContent (line 49) | getTextContent(): string { method remove (line 62) | remove(): never { method replace (line 66) | replace(node: N): never { method insertBefore (line 70) | insertBefore(nodeToInsert: LexicalNode): LexicalNode { method insertAfter (line 74) | insertAfter(nodeToInsert: LexicalNode): LexicalNode { method updateDOM (line 80) | updateDOM(prevNode: RootNode, dom: HTMLElement): false { method append (line 86) | append(...nodesToAppend: LexicalNode[]): this { method importJSON (line 99) | static importJSON(serializedNode: SerializedRootNode): RootNode { method exportJSON (line 106) | exportJSON(): SerializedRootNode { method collapseAtStart (line 115) | collapseAtStart(): true { function $createRootNode (line 120) | function $createRootNode(): RootNode { function $isRootNode (line 124) | function $isRootNode( FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalTabNode.ts type SerializedTabNode (line 23) | type SerializedTabNode = SerializedTextNode; class TabNode (line 26) | class TabNode extends TextNode { method getType (line 27) | static getType(): string { method clone (line 31) | static clone(node: TabNode): TabNode { method afterCloneFrom (line 35) | afterCloneFrom(prevNode: this): void { method constructor (line 41) | constructor(key?: NodeKey) { method importDOM (line 46) | static importDOM(): DOMConversionMap | null { method importJSON (line 50) | static importJSON(serializedTabNode: SerializedTabNode): TabNode { method exportJSON (line 57) | exportJSON(): SerializedTabNode { method setTextContent (line 65) | setTextContent(_text: string): this { method setDetail (line 69) | setDetail(_detail: TextDetailType | number): this { method setMode (line 73) | setMode(_type: TextModeType): this { method canInsertTextBefore (line 77) | canInsertTextBefore(): boolean { method canInsertTextAfter (line 81) | canInsertTextAfter(): boolean { function $createTabNode (line 86) | function $createTabNode(): TabNode { function $isTabNode (line 90) | function $isTabNode( FILE: resources/js/wysiwyg/lexical/core/nodes/LexicalTextNode.ts type SerializedTextNode (line 72) | type SerializedTextNode = Spread< type TextDetailType (line 83) | type TextDetailType = 'directionless' | 'unmergable'; type TextFormatType (line 85) | type TextFormatType = type TextModeType (line 95) | type TextModeType = 'normal' | 'token' | 'segmented'; type TextMark (line 97) | type TextMark = {end: null | number; id: string; start: null | number}; type TextMarks (line 99) | type TextMarks = Array; function getElementOuterTag (line 101) | function getElementOuterTag(node: TextNode, format: number): string | nu... function getElementInnerTag (line 117) | function getElementInnerTag(node: TextNode, format: number): string { function setTextThemeClassNames (line 127) | function setTextThemeClassNames( function diffComposedText (line 195) | function diffComposedText(a: string, b: string): [number, number, string] { function setTextContent (line 215) | function setTextContent( function createTextInnerDOM (line 251) | function createTextInnerDOM( function wrapElementWith (line 269) | function wrapElementWith( type TextNode (line 279) | interface TextNode { method getType (line 298) | static getType(): string { method clone (line 302) | static clone(node: TextNode): TextNode { method afterCloneFrom (line 306) | afterCloneFrom(prevNode: this): void { method constructor (line 314) | constructor(text: string, key?: NodeKey) { method getFormat (line 329) | getFormat(): number { method getDetail (line 341) | getDetail(): number { method getMode (line 351) | getMode(): TextModeType { method getStyle (line 361) | getStyle(): string { method isToken (line 372) | isToken(): boolean { method isComposing (line 382) | isComposing(): boolean { method isSegmented (line 392) | isSegmented(): boolean { method isDirectionless (line 401) | isDirectionless(): boolean { method isUnmergeable (line 411) | isUnmergeable(): boolean { method hasFormat (line 424) | hasFormat(type: TextFormatType): boolean { method isSimpleText (line 435) | isSimpleText(): boolean { method getTextContent (line 444) | getTextContent(): string { method getFormatFlags (line 454) | getFormatFlags(type: TextFormatType, alignWithFormat: null | number): ... method canHaveFormat (line 464) | canHaveFormat(): boolean { method createDOM (line 470) | createDOM(config: EditorConfig, editor?: LexicalEditor): HTMLElement { method updateDOM (line 493) | updateDOM( method importDOM (line 560) | static importDOM(): DOMConversionMap | null { method importJSON (line 609) | static importJSON(serializedNode: SerializedTextNode): TextNode { method exportDOM (line 621) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 671) | exportJSON(): SerializedTextNode { method selectionTransform (line 684) | selectionTransform( method setFormat (line 701) | setFormat(format: TextFormatType | number): this { method setDetail (line 719) | setDetail(detail: TextDetailType | number): this { method setStyle (line 734) | setStyle(style: string): this { method toggleFormat (line 749) | toggleFormat(type: TextFormatType): this { method toggleDirectionless (line 760) | toggleDirectionless(): this { method toggleUnmergeable (line 771) | toggleUnmergeable(): this { method setMode (line 782) | setMode(type: TextModeType): this { method setTextContent (line 799) | setTextContent(text: string): this { method select (line 816) | select(_anchorOffset?: number, _focusOffset?: number): RangeSelection { method selectStart (line 857) | selectStart(): RangeSelection { method selectEnd (line 861) | selectEnd(): RangeSelection { method spliceText (line 877) | spliceText( method canInsertTextBefore (line 918) | canInsertTextBefore(): boolean { method canInsertTextAfter (line 929) | canInsertTextAfter(): boolean { method splitText (line 941) | splitText(...splitOffsets: Array): Array { method mergeWithSibling (line 1069) | mergeWithSibling(target: TextNode): TextNode { method isTextEntity (line 1126) | isTextEntity(): boolean { class TextNode (line 286) | class TextNode extends LexicalNode { method getType (line 298) | static getType(): string { method clone (line 302) | static clone(node: TextNode): TextNode { method afterCloneFrom (line 306) | afterCloneFrom(prevNode: this): void { method constructor (line 314) | constructor(text: string, key?: NodeKey) { method getFormat (line 329) | getFormat(): number { method getDetail (line 341) | getDetail(): number { method getMode (line 351) | getMode(): TextModeType { method getStyle (line 361) | getStyle(): string { method isToken (line 372) | isToken(): boolean { method isComposing (line 382) | isComposing(): boolean { method isSegmented (line 392) | isSegmented(): boolean { method isDirectionless (line 401) | isDirectionless(): boolean { method isUnmergeable (line 411) | isUnmergeable(): boolean { method hasFormat (line 424) | hasFormat(type: TextFormatType): boolean { method isSimpleText (line 435) | isSimpleText(): boolean { method getTextContent (line 444) | getTextContent(): string { method getFormatFlags (line 454) | getFormatFlags(type: TextFormatType, alignWithFormat: null | number): ... method canHaveFormat (line 464) | canHaveFormat(): boolean { method createDOM (line 470) | createDOM(config: EditorConfig, editor?: LexicalEditor): HTMLElement { method updateDOM (line 493) | updateDOM( method importDOM (line 560) | static importDOM(): DOMConversionMap | null { method importJSON (line 609) | static importJSON(serializedNode: SerializedTextNode): TextNode { method exportDOM (line 621) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 671) | exportJSON(): SerializedTextNode { method selectionTransform (line 684) | selectionTransform( method setFormat (line 701) | setFormat(format: TextFormatType | number): this { method setDetail (line 719) | setDetail(detail: TextDetailType | number): this { method setStyle (line 734) | setStyle(style: string): this { method toggleFormat (line 749) | toggleFormat(type: TextFormatType): this { method toggleDirectionless (line 760) | toggleDirectionless(): this { method toggleUnmergeable (line 771) | toggleUnmergeable(): this { method setMode (line 782) | setMode(type: TextModeType): this { method setTextContent (line 799) | setTextContent(text: string): this { method select (line 816) | select(_anchorOffset?: number, _focusOffset?: number): RangeSelection { method selectStart (line 857) | selectStart(): RangeSelection { method selectEnd (line 861) | selectEnd(): RangeSelection { method spliceText (line 877) | spliceText( method canInsertTextBefore (line 918) | canInsertTextBefore(): boolean { method canInsertTextAfter (line 929) | canInsertTextAfter(): boolean { method splitText (line 941) | splitText(...splitOffsets: Array): Array { method mergeWithSibling (line 1069) | mergeWithSibling(target: TextNode): TextNode { method isTextEntity (line 1126) | isTextEntity(): boolean { function convertSpanElement (line 1131) | function convertSpanElement(domNode: HTMLSpanElement): DOMConversionOutp... function convertBringAttentionToElement (line 1142) | function convertBringAttentionToElement( function isNodePre (line 1161) | function isNodePre(node: Node): boolean { function findParentPreDOMNode (line 1171) | function findParentPreDOMNode(node: Node) { function $convertTextDOMNode (line 1190) | function $convertTextDOMNode(domNode: Node): DOMConversionOutput { function findTextInLine (line 1269) | function findTextInLine(text: Text, forward: boolean): null | Text { function convertTextFormatElement (line 1316) | function convertTextFormatElement(domNode: HTMLElement): DOMConversionOu... function $createTextNode (line 1332) | function $createTextNode(text = ''): TextNode { function $isTextNode (line 1336) | function $isTextNode( function applyTextFormatFromStyle (line 1342) | function applyTextFormatFromStyle( FILE: resources/js/wysiwyg/lexical/core/nodes/__tests__/unit/LexicalElementNode.test.ts function update (line 43) | async function update(fn: () => void) { function init (line 51) | async function init() { FILE: resources/js/wysiwyg/lexical/core/nodes/__tests__/unit/LexicalRootNode.test.ts function expectRootTextContentToBe (line 33) | function expectRootTextContentToBe(text: string): void { FILE: resources/js/wysiwyg/lexical/core/nodes/__tests__/unit/LexicalTextNode.test.ts function update (line 76) | async function update(fn: () => void) { function init (line 84) | async function init() { FILE: resources/js/wysiwyg/lexical/core/nodes/common.ts type CommonBlockAlignment (line 4) | type CommonBlockAlignment = 'left' | 'right' | 'center' | 'justify' | ''; type EditorNodeDirection (line 7) | type EditorNodeDirection = 'ltr' | 'rtl' | null; type NodeHasAlignment (line 9) | interface NodeHasAlignment { type NodeHasId (line 15) | interface NodeHasId { type NodeHasInset (line 21) | interface NodeHasInset { type NodeHasDirection (line 27) | interface NodeHasDirection { type CommonBlockInterface (line 33) | interface CommonBlockInterface extends NodeHasId, NodeHasAlignment, Node... function extractAlignmentFromElement (line 35) | function extractAlignmentFromElement(element: HTMLElement): CommonBlockA... function extractInsetFromElement (line 54) | function extractInsetFromElement(element: HTMLElement): number { function extractDirectionFromElement (line 59) | function extractDirectionFromElement(element: HTMLElement): EditorNodeDi... function setCommonBlockPropsFromElement (line 68) | function setCommonBlockPropsFromElement(element: HTMLElement, node: Comm... function commonPropertiesDifferent (line 78) | function commonPropertiesDifferent(nodeA: CommonBlockInterface, nodeB: C... function applyCommonPropertyChanges (line 85) | function applyCommonPropertyChanges(prevNode: CommonBlockInterface, curr... function updateElementWithCommonBlockProps (line 117) | function updateElementWithCommonBlockProps(element: HTMLElement, node: C... function deserializeCommonBlockNode (line 135) | function deserializeCommonBlockNode(serializedNode: SerializedCommonBloc... type NodeHasSize (line 142) | interface NodeHasSize { FILE: resources/js/wysiwyg/lexical/core/shared/__mocks__/invariant.ts function invariant (line 12) | function invariant( FILE: resources/js/wysiwyg/lexical/core/shared/canUseDOM.ts constant CAN_USE_DOM (line 9) | const CAN_USE_DOM: boolean = FILE: resources/js/wysiwyg/lexical/core/shared/caretFromPoint.ts function caretFromPoint (line 9) | function caretFromPoint( FILE: resources/js/wysiwyg/lexical/core/shared/environment.ts type Document (line 12) | interface Document { type Window (line 16) | interface Window { constant IS_APPLE (line 24) | const IS_APPLE: boolean = constant IS_FIREFOX (line 27) | const IS_FIREFOX: boolean = constant CAN_USE_BEFORE_INPUT (line 30) | const CAN_USE_BEFORE_INPUT: boolean = constant IS_SAFARI (line 35) | const IS_SAFARI: boolean = constant IS_IOS (line 38) | const IS_IOS: boolean = constant IS_ANDROID (line 43) | const IS_ANDROID: boolean = constant IS_CHROME (line 48) | const IS_CHROME: boolean = constant IS_ANDROID_CHROME (line 52) | const IS_ANDROID_CHROME: boolean = constant IS_APPLE_WEBKIT (line 55) | const IS_APPLE_WEBKIT = FILE: resources/js/wysiwyg/lexical/core/shared/invariant.ts function invariant (line 12) | function invariant( FILE: resources/js/wysiwyg/lexical/core/shared/normalizeClassNames.ts function normalizeClassNames (line 9) | function normalizeClassNames( FILE: resources/js/wysiwyg/lexical/core/shared/simpleDiffWithCursor.ts function simpleDiffWithCursor (line 9) | function simpleDiffWithCursor( FILE: resources/js/wysiwyg/lexical/core/shared/warnOnlyOnce.ts function warnOnlyOnce (line 9) | function warnOnlyOnce(message: string) { FILE: resources/js/wysiwyg/lexical/headless/__tests__/unit/LexicalHeadlessEditor.test.ts function update (line 38) | async function update(updateFn: () => void) { function assertEditorState (line 43) | function assertEditorState( function setupDom (line 175) | function setupDom() { FILE: resources/js/wysiwyg/lexical/headless/index.ts function createHeadlessEditor (line 19) | function createHeadlessEditor( FILE: resources/js/wysiwyg/lexical/history/index.ts type MergeAction (line 25) | type MergeAction = 0 | 1 | 2; constant HISTORY_MERGE (line 26) | const HISTORY_MERGE = 0; constant HISTORY_PUSH (line 27) | const HISTORY_PUSH = 1; constant DISCARD_HISTORY_CANDIDATE (line 28) | const DISCARD_HISTORY_CANDIDATE = 2; type ChangeType (line 30) | type ChangeType = 0 | 1 | 2 | 3 | 4; constant OTHER (line 31) | const OTHER = 0; constant COMPOSING_CHARACTER (line 32) | const COMPOSING_CHARACTER = 1; constant INSERT_CHARACTER_AFTER_SELECTION (line 33) | const INSERT_CHARACTER_AFTER_SELECTION = 2; constant DELETE_CHARACTER_BEFORE_SELECTION (line 34) | const DELETE_CHARACTER_BEFORE_SELECTION = 3; constant DELETE_CHARACTER_AFTER_SELECTION (line 35) | const DELETE_CHARACTER_AFTER_SELECTION = 4; type HistoryStateEntry (line 37) | type HistoryStateEntry = { type HistoryState (line 41) | type HistoryState = { type IntentionallyMarkedAsDirtyElement (line 47) | type IntentionallyMarkedAsDirtyElement = boolean; function getDirtyNodes (line 49) | function getDirtyNodes( function getChangeType (line 80) | function getChangeType( function isTextNodeUnchanged (line 186) | function isTextNodeUnchanged( function createMergeActionGetter (line 221) | function createMergeActionGetter( function redo (line 318) | function redo(editor: LexicalEditor, historyState: HistoryState): void { function undo (line 346) | function undo(editor: LexicalEditor, historyState: HistoryState): void { function clearHistory (line 374) | function clearHistory(historyState: HistoryState) { function registerHistory (line 389) | function registerHistory( function createEmptyHistoryState (line 495) | function createEmptyHistoryState(): HistoryState { FILE: resources/js/wysiwyg/lexical/html/__tests__/unit/LexicalHtml.test.ts type Input (line 26) | type Input = Array<{ FILE: resources/js/wysiwyg/lexical/html/index.ts function $generateNodesFromDOM (line 39) | function $generateNodesFromDOM( function $generateHtmlFromNodes (line 66) | function $generateHtmlFromNodes( function $appendNodesToHTML (line 102) | function $appendNodesToHTML( function getConversionFunction (line 179) | function getConversionFunction( constant IGNORE_TAGS (line 205) | const IGNORE_TAGS = new Set(['STYLE', 'SCRIPT']); function $createNodesFromDOM (line 207) | function $createNodesFromDOM( function wrapContinuousInlines (line 333) | function wrapContinuousInlines( function $unwrapArtificalNodes (line 361) | function $unwrapArtificalNodes( function isDomNodeBetweenTwoInlineNodes (line 379) | function isDomNodeBetweenTwoInlineNodes(node: Node): boolean { FILE: resources/js/wysiwyg/lexical/link/LexicalMentionNode.ts type SerializedMentionNode (line 12) | type SerializedMentionNode = Spread<{ class MentionNode (line 18) | class MentionNode extends DecoratorNode { method getType (line 23) | static getType(): string { method clone (line 26) | static clone(node: MentionNode): MentionNode { method setUserDetails (line 34) | setUserDetails(userId: number, userName: string, userSlug: string): vo... method hasUserSet (line 41) | hasUserSet(): boolean { method isInline (line 45) | isInline(): boolean { method isParentRequired (line 49) | isParentRequired(): boolean { method decorate (line 53) | decorate(editor: LexicalEditor, config: EditorConfig): EditorDecorator... method createDOM (line 60) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 70) | updateDOM(prevNode: MentionNode): boolean { method importDOM (line 74) | static importDOM(): DOMConversionMap|null { method exportJSON (line 102) | exportJSON(): SerializedMentionNode { method importJSON (line 112) | static importJSON(serializedNode: SerializedMentionNode): MentionNode { function $createMentionNode (line 117) | function $createMentionNode(userId: number, userName: string, userSlug: ... function $isMentionNode (line 123) | function $isMentionNode(node: LexicalNode | null | undefined): node is M... FILE: resources/js/wysiwyg/lexical/link/index.ts type LinkAttributes (line 32) | type LinkAttributes = { type AutoLinkAttributes (line 38) | type AutoLinkAttributes = Partial< type SerializedLinkNode (line 42) | type SerializedLinkNode = Spread< type LinkHTMLElementType (line 49) | type LinkHTMLElementType = HTMLAnchorElement | HTMLSpanElement; class LinkNode (line 52) | class LinkNode extends ElementNode { method getType (line 62) | static getType(): string { method clone (line 66) | static clone(node: LinkNode): LinkNode { method constructor (line 74) | constructor(url: string, attributes: LinkAttributes = {}, key?: NodeKe... method createDOM (line 83) | createDOM(config: EditorConfig): LinkHTMLElementType { method updateDOM (line 99) | updateDOM( method importDOM (line 140) | static importDOM(): DOMConversionMap | null { method importJSON (line 149) | static importJSON( method exportJSON (line 161) | exportJSON(): SerializedLinkNode | SerializedAutoLinkNode { method getURL (line 173) | getURL(): string { method setURL (line 177) | setURL(url: string): void { method getTarget (line 182) | getTarget(): null | string { method setTarget (line 186) | setTarget(target: null | string): void { method getRel (line 191) | getRel(): null | string { method setRel (line 195) | setRel(rel: null | string): void { method getTitle (line 200) | getTitle(): null | string { method setTitle (line 204) | setTitle(title: null | string): void { method insertNewAfter (line 209) | insertNewAfter( method canInsertTextBefore (line 222) | canInsertTextBefore(): false { method canInsertTextAfter (line 226) | canInsertTextAfter(): false { method canBeEmpty (line 230) | canBeEmpty(): false { method isInline (line 234) | isInline(): true { method extractWithChild (line 238) | extractWithChild( method isEmailURI (line 257) | isEmailURI(): boolean { method isWebSiteURI (line 261) | isWebSiteURI(): boolean { function $convertAnchorElement (line 268) | function $convertAnchorElement(domNode: Node): DOMConversionOutput { function $createLinkNode (line 289) | function $createLinkNode( function $isLinkNode (line 301) | function $isLinkNode( type SerializedAutoLinkNode (line 307) | type SerializedAutoLinkNode = Spread< class AutoLinkNode (line 316) | class AutoLinkNode extends LinkNode { method constructor (line 321) | constructor(url: string, attributes: AutoLinkAttributes = {}, key?: No... method getType (line 329) | static getType(): string { method clone (line 333) | static clone(node: AutoLinkNode): AutoLinkNode { method getIsUnlinked (line 346) | getIsUnlinked(): boolean { method setIsUnlinked (line 350) | setIsUnlinked(value: boolean) { method createDOM (line 356) | createDOM(config: EditorConfig): LinkHTMLElementType { method updateDOM (line 364) | updateDOM( method importJSON (line 375) | static importJSON(serializedNode: SerializedAutoLinkNode): AutoLinkNode { method importDOM (line 386) | static importDOM(): null { method exportJSON (line 391) | exportJSON(): SerializedAutoLinkNode { method insertNewAfter (line 400) | insertNewAfter( function $createAutoLinkNode (line 429) | function $createAutoLinkNode( function $isAutoLinkNode (line 441) | function $isAutoLinkNode( constant TOGGLE_LINK_COMMAND (line 447) | const TOGGLE_LINK_COMMAND: LexicalCommand< function $toggleLink (line 457) | function $toggleLink( function $getAncestor (line 576) | function $getAncestor( FILE: resources/js/wysiwyg/lexical/list/LexicalListItemNode.ts type SerializedListItemNode (line 40) | type SerializedListItemNode = Spread< class ListItemNode (line 49) | class ListItemNode extends ElementNode { method getType (line 55) | static getType(): string { method clone (line 59) | static clone(node: ListItemNode): ListItemNode { method constructor (line 63) | constructor(value?: number, checked?: boolean, key?: NodeKey) { method createDOM (line 69) | createDOM(config: EditorConfig): HTMLElement { method updateDOM (line 86) | updateDOM( method transform (line 103) | static transform(): (node: LexicalNode) => void { method importDOM (line 118) | static importDOM(): DOMConversionMap | null { method importJSON (line 127) | static importJSON(serializedNode: SerializedListItemNode): ListItemNode { method exportDOM (line 135) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 156) | exportJSON(): SerializedListItemNode { method append (line 166) | append(...nodes: LexicalNode[]): this { method replace (line 182) | replace( method insertAfter (line 225) | insertAfter(node: LexicalNode, restoreSelection = true): LexicalNode { method remove (line 255) | remove(preserveEmptyParent?: boolean): void { method insertNewAfter (line 271) | insertNewAfter( method collapseAtStart (line 302) | collapseAtStart(selection: RangeSelection): true { method getValue (line 341) | getValue(): number { method setValue (line 347) | setValue(value: number): void { method getChecked (line 352) | getChecked(): boolean | undefined { method setChecked (line 365) | setChecked(checked?: boolean): void { method toggleChecked (line 370) | toggleChecked(): void { method canInsertAfter (line 375) | canInsertAfter(node: LexicalNode): boolean { method canReplaceWith (line 380) | canReplaceWith(replacement: LexicalNode): boolean { method canMergeWith (line 384) | canMergeWith(node: LexicalNode): boolean { method extractWithChild (line 388) | extractWithChild(child: LexicalNode, selection: BaseSelection): boolean { method isParentRequired (line 403) | isParentRequired(): true { method createParentElementNode (line 407) | createParentElementNode(): ElementNode { method canMergeWhenEmpty (line 411) | canMergeWhenEmpty(): true { function $hasNestedListWithoutLabel (line 416) | function $hasNestedListWithoutLabel(node: ListItemNode): boolean { function updateListItemChecked (line 432) | function updateListItemChecked( function $convertListItemElement (line 446) | function $convertListItemElement(domNode: HTMLElement): DOMConversionOut... function $convertCheckboxInput (line 466) | function $convertCheckboxInput(domNode: Element): DOMConversionOutput { function $createListItemNode (line 480) | function $createListItemNode(checked?: boolean): ListItemNode { function $isListItemNode (line 489) | function $isListItemNode( FILE: resources/js/wysiwyg/lexical/list/LexicalListNode.ts type SerializedListNode (line 41) | type SerializedListNode = Spread< type ListType (line 51) | type ListType = 'number' | 'bullet' | 'check'; type ListNodeTagType (line 53) | type ListNodeTagType = 'ul' | 'ol'; class ListNode (line 56) | class ListNode extends ElementNode { method getType (line 66) | static getType(): string { method clone (line 70) | static clone(node: ListNode): ListNode { method constructor (line 77) | constructor(listType: ListType, start: number, key?: NodeKey) { method getTag (line 85) | getTag(): ListNodeTagType { method setId (line 89) | setId(id: string) { method getId (line 94) | getId(): string { method setListType (line 99) | setListType(type: ListType): void { method getListType (line 105) | getListType(): ListType { method getStart (line 109) | getStart(): number { method createDOM (line 115) | createDOM(config: EditorConfig, _editor?: LexicalEditor): HTMLElement { method updateDOM (line 137) | updateDOM( method transform (line 155) | static transform(): (node: LexicalNode) => void { method importDOM (line 163) | static importDOM(): DOMConversionMap | null { method importJSON (line 176) | static importJSON(serializedNode: SerializedListNode): ListNode { method exportDOM (line 183) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 198) | exportJSON(): SerializedListNode { method canBeEmpty (line 210) | canBeEmpty(): false { method canIndent (line 214) | canIndent(): false { method append (line 218) | append(...nodesToAppend: LexicalNode[]): this { method extractWithChild (line 241) | extractWithChild(child: LexicalNode): boolean { function $setListThemeClassNames (line 246) | function $setListThemeClassNames( function $normalizeChildren (line 311) | function $normalizeChildren(nodes: Array): Array = { function $createListNode (line 394) | function $createListNode(listType: ListType, start = 1): ListNode { function $isListNode (line 403) | function $isListNode( FILE: resources/js/wysiwyg/lexical/list/formatList.ts function $isSelectingEmptyListItem (line 42) | function $isSelectingEmptyListItem( function insertList (line 65) | function insertList(editor: LexicalEditor, listType: ListType): void { function append (line 144) | function append(node: ElementNode, nodesToAppend: Array) { function $createListOrMerge (line 148) | function $createListOrMerge(node: ElementNode, listType: ListType): List... function mergeLists (line 192) | function mergeLists(list1: ListNode, list2: ListNode): void { function removeList (line 221) | function removeList(editor: LexicalEditor): void { function updateChildrenListItemValue (line 286) | function updateChildrenListItemValue(list: ListNode): void { function mergeNextSiblingListIfSameType (line 309) | function mergeNextSiblingListIfSameType(list: ListNode): void { function $handleIndent (line 325) | function $handleIndent(listItemNode: ListItemNode): void { function $handleOutdent (line 399) | function $handleOutdent(listItemNode: ListItemNode): void { function $handleListInsertParagraph (line 467) | function $handleListInsertParagraph(): boolean { FILE: resources/js/wysiwyg/lexical/list/index.ts constant INSERT_UNORDERED_LIST_COMMAND (line 40) | const INSERT_UNORDERED_LIST_COMMAND: LexicalCommand = constant INSERT_ORDERED_LIST_COMMAND (line 42) | const INSERT_ORDERED_LIST_COMMAND: LexicalCommand = createCommand( constant INSERT_CHECK_LIST_COMMAND (line 45) | const INSERT_CHECK_LIST_COMMAND: LexicalCommand = createCommand( constant REMOVE_LIST_COMMAND (line 48) | const REMOVE_LIST_COMMAND: LexicalCommand = createCommand( FILE: resources/js/wysiwyg/lexical/list/utils.ts function $getListDepth (line 27) | function $getListDepth(listNode: ListNode): number { function $getTopListNode (line 54) | function $getTopListNode(listItem: LexicalNode): ListNode { function $isLastItemInList (line 79) | function $isLastItemInList(listItem: ListItemNode): boolean { function $getAllListItems (line 108) | function $getAllListItems(node: ListNode): Array { function isNestedListNode (line 137) | function isNestedListNode( function $findNearestListItemNode (line 151) | function $findNearestListItemNode( function $removeHighestEmptyListParent (line 167) | function $removeHighestEmptyListParent( function $wrapInListItem (line 202) | function $wrapInListItem(node: LexicalNode): ListItemNode { FILE: resources/js/wysiwyg/lexical/rich-text/LexicalCalloutNode.ts type CalloutCategory (line 19) | type CalloutCategory = 'info' | 'danger' | 'warning' | 'success'; type SerializedCalloutNode (line 21) | type SerializedCalloutNode = Spread<{ class CalloutNode (line 25) | class CalloutNode extends ElementNode { method getType (line 31) | static getType() { method clone (line 35) | static clone(node: CalloutNode) { method constructor (line 43) | constructor(category: CalloutCategory, key?: string) { method setCategory (line 48) | setCategory(category: CalloutCategory) { method getCategory (line 53) | getCategory(): CalloutCategory { method setId (line 58) | setId(id: string) { method getId (line 63) | getId(): string { method setAlignment (line 68) | setAlignment(alignment: CommonBlockAlignment) { method getAlignment (line 73) | getAlignment(): CommonBlockAlignment { method setInset (line 78) | setInset(size: number) { method getInset (line 83) | getInset(): number { method createDOM (line 88) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 95) | updateDOM(prevNode: CalloutNode): boolean { method insertNewAfter (line 100) | insertNewAfter(selection: RangeSelection, restoreSelection?: boolean):... method importDOM (line 117) | static importDOM(): DOMConversionMap|null { method exportJSON (line 148) | exportJSON(): SerializedCalloutNode { method importJSON (line 160) | static importJSON(serializedNode: SerializedCalloutNode): CalloutNode { function $createCalloutNode (line 168) | function $createCalloutNode(category: CalloutCategory = 'info') { function $isCalloutNode (line 172) | function $isCalloutNode(node: LexicalNode | null | undefined): node is C... function $isCalloutNodeOfCategory (line 176) | function $isCalloutNodeOfCategory(node: LexicalNode | null | undefined, ... FILE: resources/js/wysiwyg/lexical/rich-text/LexicalCodeBlockNode.ts type SerializedCodeBlockNode (line 15) | type SerializedCodeBlockNode = Spread<{ class CodeBlockNode (line 26) | class CodeBlockNode extends DecoratorNode { method getType (line 31) | static getType(): string { method clone (line 35) | static clone(node: CodeBlockNode): CodeBlockNode { method constructor (line 41) | constructor(language: string = '', code: string = '', key?: string) { method setLanguage (line 47) | setLanguage(language: string): void { method getLanguage (line 52) | getLanguage(): string { method setCode (line 57) | setCode(code: string): void { method getCode (line 62) | getCode(): string { method setId (line 67) | setId(id: string) { method getId (line 72) | getId(): string { method decorate (line 77) | decorate(editor: LexicalEditor, config: EditorConfig): EditorDecorator... method isInline (line 84) | isInline(): boolean { method isIsolated (line 88) | isIsolated() { method createDOM (line 92) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 104) | updateDOM(prevNode: CodeBlockNode, dom: HTMLElement) { method exportDOM (line 123) | exportDOM(editor: LexicalEditor): DOMExportOutput { method importDOM (line 130) | static importDOM(): DOMConversionMap|null { method exportJSON (line 163) | exportJSON(): SerializedCodeBlockNode { method importJSON (line 173) | static importJSON(serializedNode: SerializedCodeBlockNode): CodeBlockN... function $createCodeBlockNode (line 180) | function $createCodeBlockNode(language: string = '', code: string = ''):... function $isCodeBlockNode (line 184) | function $isCodeBlockNode(node: LexicalNode | null | undefined) { function $openCodeEditorForNode (line 188) | function $openCodeEditorForNode(editor: LexicalEditor, node: CodeBlockNo... FILE: resources/js/wysiwyg/lexical/rich-text/LexicalDetailsNode.ts type SerializedDetailsNode (line 13) | type SerializedDetailsNode = Spread<{ class DetailsNode (line 18) | class DetailsNode extends ElementNode { method getType (line 23) | static getType() { method setId (line 27) | setId(id: string) { method getId (line 32) | getId(): string { method setSummary (line 37) | setSummary(summary: string) { method getSummary (line 42) | getSummary(): string { method setOpen (line 47) | setOpen(open: boolean) { method getOpen (line 52) | getOpen(): boolean { method clone (line 57) | static clone(node: DetailsNode): DetailsNode { method createDOM (line 66) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 98) | updateDOM(prevNode: DetailsNode, dom: HTMLElement) { method importDOM (line 114) | static importDOM(): DOMConversionMap|null { method exportDOM (line 147) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 160) | exportJSON(): SerializedDetailsNode { method importJSON (line 170) | static importJSON(serializedNode: SerializedDetailsNode): DetailsNode { method shouldSelectDirectly (line 177) | shouldSelectDirectly(): boolean { method canBeEmpty (line 181) | canBeEmpty(): boolean { function $createDetailsNode (line 187) | function $createDetailsNode() { function $isDetailsNode (line 191) | function $isDetailsNode(node: LexicalNode | null | undefined): node is D... FILE: resources/js/wysiwyg/lexical/rich-text/LexicalDiagramNode.ts type SerializedDiagramNode (line 14) | type SerializedDiagramNode = Spread<{ class DiagramNode (line 20) | class DiagramNode extends DecoratorNode { method getType (line 25) | static getType(): string { method clone (line 29) | static clone(node: DiagramNode): DiagramNode { method constructor (line 35) | constructor(drawingId: string, drawingUrl: string, key?: string) { method setDrawingIdAndUrl (line 41) | setDrawingIdAndUrl(drawingId: string, drawingUrl: string): void { method getDrawingIdAndUrl (line 47) | getDrawingIdAndUrl(): { id: string, url: string } { method setId (line 55) | setId(id: string) { method getId (line 60) | getId(): string { method decorate (line 65) | decorate(editor: LexicalEditor, config: EditorConfig): EditorDecorator... method isInline (line 72) | isInline(): boolean { method isIsolated (line 76) | isIsolated() { method createDOM (line 80) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 89) | updateDOM(prevNode: DiagramNode, dom: HTMLElement) { method importDOM (line 108) | static importDOM(): DOMConversionMap | null { method exportJSON (line 136) | exportJSON(): SerializedDiagramNode { method importJSON (line 146) | static importJSON(serializedNode: SerializedDiagramNode): DiagramNode { function $createDiagramNode (line 153) | function $createDiagramNode(drawingId: string = '', drawingUrl: string =... FILE: resources/js/wysiwyg/lexical/rich-text/LexicalHeadingNode.ts type HeadingTagType (line 24) | type HeadingTagType = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'; type SerializedHeadingNode (line 26) | type SerializedHeadingNode = Spread< class HeadingNode (line 34) | class HeadingNode extends CommonBlockNode { method getType (line 38) | static getType(): string { method clone (line 42) | static clone(node: HeadingNode): HeadingNode { method constructor (line 48) | constructor(tag: HeadingTagType, key?: NodeKey) { method getTag (line 53) | getTag(): HeadingTagType { method createDOM (line 59) | createDOM(config: EditorConfig): HTMLElement { method updateDOM (line 72) | updateDOM(prevNode: HeadingNode, dom: HTMLElement): boolean { method importDOM (line 76) | static importDOM(): DOMConversionMap | null { method exportDOM (line 105) | exportDOM(editor: LexicalEditor): DOMExportOutput { method importJSON (line 119) | static importJSON(serializedNode: SerializedHeadingNode): HeadingNode { method exportJSON (line 125) | exportJSON(): SerializedHeadingNode { method insertNewAfter (line 135) | insertNewAfter( method collapseAtStart (line 161) | collapseAtStart(): true { method extractWithChild (line 171) | extractWithChild(): boolean { function $convertHeadingElement (line 176) | function $convertHeadingElement(element: HTMLElement): DOMConversionOutp... function $createHeadingNode (line 193) | function $createHeadingNode(headingTag: HeadingTagType): HeadingNode { function $isHeadingNode (line 197) | function $isHeadingNode( FILE: resources/js/wysiwyg/lexical/rich-text/LexicalHorizontalRuleNode.ts type SerializedHorizontalRuleNode (line 11) | type SerializedHorizontalRuleNode = Spread<{ class HorizontalRuleNode (line 15) | class HorizontalRuleNode extends ElementNode { method getType (line 18) | static getType() { method setId (line 22) | setId(id: string) { method getId (line 27) | getId(): string { method clone (line 32) | static clone(node: HorizontalRuleNode): HorizontalRuleNode { method createDOM (line 38) | createDOM(_config: EditorConfig, _editor: LexicalEditor): HTMLElement { method updateDOM (line 47) | updateDOM(prevNode: HorizontalRuleNode, dom: HTMLElement) { method importDOM (line 51) | static importDOM(): DOMConversionMap|null { method exportJSON (line 69) | exportJSON(): SerializedHorizontalRuleNode { method importJSON (line 78) | static importJSON(serializedNode: SerializedHorizontalRuleNode): Horiz... function $createHorizontalRuleNode (line 86) | function $createHorizontalRuleNode(): HorizontalRuleNode { function $isHorizontalRuleNode (line 90) | function $isHorizontalRuleNode(node: LexicalNode | null | undefined): no... FILE: resources/js/wysiwyg/lexical/rich-text/LexicalImageNode.ts type ImageNodeOptions (line 13) | interface ImageNodeOptions { type SerializedImageNode (line 19) | type SerializedImageNode = Spread<{ class ImageNode (line 27) | class ImageNode extends ElementNode { method getType (line 34) | static getType(): string { method clone (line 38) | static clone(node: ImageNode): ImageNode { method constructor (line 48) | constructor(src: string, options: ImageNodeOptions, key?: string) { method setSrc (line 62) | setSrc(src: string): void { method getSrc (line 67) | getSrc(): string { method setAltText (line 72) | setAltText(altText: string): void { method getAltText (line 77) | getAltText(): string { method setHeight (line 82) | setHeight(height: number): void { method getHeight (line 87) | getHeight(): number { method setWidth (line 92) | setWidth(width: number): void { method getWidth (line 97) | getWidth(): number { method setAlignment (line 102) | setAlignment(alignment: CommonBlockAlignment) { method getAlignment (line 107) | getAlignment(): CommonBlockAlignment { method isInline (line 112) | isInline(): boolean { method createDOM (line 116) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 143) | updateDOM(prevNode: ImageNode, dom: HTMLElement) { method importDOM (line 184) | static importDOM(): DOMConversionMap|null { method exportJSON (line 208) | exportJSON(): SerializedImageNode { method importJSON (line 221) | static importJSON(serializedNode: SerializedImageNode): ImageNode { function $createImageNode (line 232) | function $createImageNode(src: string, options: ImageNodeOptions = {}): ... function $isImageNode (line 236) | function $isImageNode(node: LexicalNode | null | undefined) { FILE: resources/js/wysiwyg/lexical/rich-text/LexicalMediaNode.ts type MediaNodeTag (line 19) | type MediaNodeTag = 'iframe' | 'embed' | 'object' | 'video' | 'audio'; type MediaNodeSource (line 20) | type MediaNodeSource = { type SerializedMediaNode (line 25) | type SerializedMediaNode = Spread<{ function filterAttributes (line 38) | function filterAttributes(attributes: Record): Record, s... function domElementToNode (line 61) | function domElementToNode(tag: MediaNodeTag, element: HTMLElement): Medi... class MediaNode (line 89) | class MediaNode extends ElementNode { method getType (line 97) | static getType() { method clone (line 101) | static clone(node: MediaNode) { method constructor (line 111) | constructor(tag: MediaNodeTag, key?: string) { method setTag (line 116) | setTag(tag: MediaNodeTag) { method getTag (line 121) | getTag(): MediaNodeTag { method setAttributes (line 126) | setAttributes(attributes: Record) { method getAttributes (line 131) | getAttributes(): Record { method setSources (line 136) | setSources(sources: MediaNodeSource[]) { method getSources (line 141) | getSources(): MediaNodeSource[] { method setSrc (line 146) | setSrc(src: string): void { method setWidthAndHeight (line 166) | setWidthAndHeight(width: string, height: string): void { method setId (line 177) | setId(id: string) { method getId (line 182) | getId(): string { method setAlignment (line 187) | setAlignment(alignment: CommonBlockAlignment) { method getAlignment (line 192) | getAlignment(): CommonBlockAlignment { method setInset (line 197) | setInset(size: number) { method getInset (line 202) | getInset(): number { method setHeight (line 207) | setHeight(height: number): void { method getHeight (line 216) | getHeight(): number { method setWidth (line 221) | setWidth(width: number): void { method getWidth (line 227) | getWidth(): number { method isInline (line 232) | isInline(): boolean { method isParentRequired (line 236) | isParentRequired(): boolean { method createInnerDOM (line 240) | createInnerDOM() { method createDOM (line 248) | createDOM(_config: EditorConfig, _editor: LexicalEditor) { method updateDOM (line 255) | updateDOM(prevNode: MediaNode, dom: HTMLElement): boolean { method importDOM (line 292) | static importDOM(): DOMConversionMap|null { method exportDOM (line 316) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 321) | exportJSON(): SerializedMediaNode { method importJSON (line 335) | static importJSON(serializedNode: SerializedMediaNode): MediaNode { function $createMediaNode (line 343) | function $createMediaNode(tag: MediaNodeTag) { function $createMediaNodeFromHtml (line 347) | function $createMediaNodeFromHtml(html: string): MediaNode | null { type UrlPattern (line 365) | interface UrlPattern { function $createMediaNodeFromSrc (line 400) | function $createMediaNodeFromSrc(src: string): MediaNode { function $isMediaNode (line 431) | function $isMediaNode(node: LexicalNode | null | undefined): node is Med... function $isMediaNodeOfTag (line 435) | function $isMediaNodeOfTag(node: LexicalNode | null | undefined, tag: Me... FILE: resources/js/wysiwyg/lexical/rich-text/LexicalQuoteNode.ts type SerializedQuoteNode (line 23) | type SerializedQuoteNode = SerializedCommonBlockNode; class QuoteNode (line 26) | class QuoteNode extends CommonBlockNode { method getType (line 27) | static getType(): string { method clone (line 31) | static clone(node: QuoteNode): QuoteNode { method constructor (line 37) | constructor(key?: NodeKey) { method createDOM (line 43) | createDOM(config: EditorConfig): HTMLElement { method updateDOM (line 50) | updateDOM(prevNode: QuoteNode, dom: HTMLElement): boolean { method importDOM (line 54) | static importDOM(): DOMConversionMap | null { method exportDOM (line 63) | exportDOM(editor: LexicalEditor): DOMExportOutput { method importJSON (line 77) | static importJSON(serializedNode: SerializedQuoteNode): QuoteNode { method exportJSON (line 83) | exportJSON(): SerializedQuoteNode { method insertNewAfter (line 92) | insertNewAfter(_: RangeSelection, restoreSelection?: boolean): Paragra... method collapseAtStart (line 100) | collapseAtStart(): true { method canMergeWhenEmpty (line 108) | canMergeWhenEmpty(): true { function $createQuoteNode (line 113) | function $createQuoteNode(): QuoteNode { function $isQuoteNode (line 117) | function $isQuoteNode( function $convertBlockquoteElement (line 123) | function $convertBlockquoteElement(element: HTMLElement): DOMConversionO... FILE: resources/js/wysiwyg/lexical/rich-text/index.ts constant DRAG_DROP_PASTE (line 70) | const DRAG_DROP_PASTE: LexicalCommand> = createCommand( function onPasteForRichText (line 76) | function onPasteForRichText( function onCutForRichText (line 99) | async function onCutForRichText( function eventFiles (line 120) | function eventFiles( function $handleIndentAndOutdent (line 141) | function $handleIndentAndOutdent( function $isTargetWithinDecorator (line 173) | function $isTargetWithinDecorator(target: HTMLElement): boolean { function $isSelectionAtEndOfRoot (line 178) | function $isSelectionAtEndOfRoot(selection: RangeSelection) { function registerRichText (line 183) | function registerRichText(editor: LexicalEditor): () => void { FILE: resources/js/wysiwyg/lexical/selection/__tests__/unit/LexicalSelection.test.ts type ExpectedSelection (line 79) | interface ExpectedSelection { function init (line 116) | async function init() { function update (line 174) | async function update(fn: () => void) { function assertSelection (line 185) | function assertSelection( FILE: resources/js/wysiwyg/lexical/selection/__tests__/unit/LexicalSelectionHelpers.test.ts method toJSON (line 61) | toJSON() { function $createParagraphWithNodes (line 67) | function $createParagraphWithNodes( FILE: resources/js/wysiwyg/lexical/selection/__tests__/utils/index.ts method get (line 20) | get() { method set (line 24) | set(value) { type Segment (line 29) | type Segment = { function printWhitespace (line 222) | function printWhitespace(whitespaceCharacter: string) { function insertText (line 228) | function insertText(text: string) { function insertTokenNode (line 235) | function insertTokenNode(text: string) { function insertSegmentedNode (line 242) | function insertSegmentedNode(text: string) { function convertToTokenNode (line 249) | function convertToTokenNode() { function convertToSegmentedNode (line 256) | function convertToSegmentedNode() { function insertParagraph (line 263) | function insertParagraph() { function deleteWordBackward (line 269) | function deleteWordBackward(n: number | null | undefined) { function deleteWordForward (line 277) | function deleteWordForward(n: number | null | undefined) { function moveBackward (line 285) | function moveBackward(n: number | null | undefined) { function moveForward (line 293) | function moveForward(n: number | null | undefined) { function moveEnd (line 301) | function moveEnd() { function deleteBackward (line 307) | function deleteBackward(n: number | null | undefined) { function deleteForward (line 315) | function deleteForward(n: number | null | undefined) { function formatBold (line 323) | function formatBold() { function formatItalic (line 330) | function formatItalic() { function formatStrikeThrough (line 337) | function formatStrikeThrough() { function formatUnderline (line 344) | function formatUnderline() { function redo (line 351) | function redo(n: number | null | undefined) { function undo (line 359) | function undo(n: number | null | undefined) { function pastePlain (line 367) | function pastePlain(text: string) { function pasteLexical (line 374) | function pasteLexical(text: string) { function pasteHTML (line 381) | function pasteHTML(text: string) { function moveNativeSelection (line 388) | function moveNativeSelection( function getNodeFromPath (line 403) | function getNodeFromPath(path: number[], rootElement: Node) { function setNativeSelection (line 413) | function setNativeSelection( function setNativeSelectionWithPaths (line 427) | function setNativeSelectionWithPaths( function getLastTextNode (line 439) | function getLastTextNode(startingNode: Node) { function getNextTextNode (line 478) | function getNextTextNode(startingNode: Node) { function moveNativeSelectionBackward (line 517) | function moveNativeSelectionBackward() { function moveNativeSelectionForward (line 586) | function moveNativeSelectionForward() { function applySelectionInputs (line 640) | async function applySelectionInputs( function $setAnchorPoint (line 877) | function $setAnchorPoint( function $setFocusPoint (line 898) | function $setFocusPoint( FILE: resources/js/wysiwyg/lexical/selection/constants.ts constant CSS_TO_STYLES (line 8) | const CSS_TO_STYLES: Map> = new Map(); FILE: resources/js/wysiwyg/lexical/selection/lexical-node.ts function $sliceSelectedTextNodeContent (line 41) | function $sliceSelectedTextNodeContent( function $isAtNodeEnd (line 92) | function $isAtNodeEnd(point: Point): boolean { function $trimTextContentFromAnchor (line 113) | function $trimTextContentFromAnchor( function $addNodeStyle (line 236) | function $addNodeStyle(node: TextNode): void { function $patchStyle (line 242) | function $patchStyle( function $patchStyleText (line 279) | function $patchStyleText( FILE: resources/js/wysiwyg/lexical/selection/range-selection.ts function $setBlocksType (line 44) | function $setBlocksType( function isPointAttached (line 88) | function isPointAttached(point: Point): boolean { function $removeParentEmptyElements (line 92) | function $removeParentEmptyElements(startingNode: ElementNode): void { function $wrapNodes (line 114) | function $wrapNodes( function $wrapNodesImpl (line 200) | function $wrapNodesImpl( function $shouldOverrideDefaultCharacterSelection (line 383) | function $shouldOverrideDefaultCharacterSelection( function $moveCaretSelection (line 404) | function $moveCaretSelection( function $isParentElementRTL (line 418) | function $isParentElementRTL(selection: RangeSelection): boolean { function $moveCharacter (line 433) | function $moveCharacter( function $selectAll (line 451) | function $selectAll(selection: RangeSelection): void { function $getNodeStyleValueForProperty (line 489) | function $getNodeStyleValueForProperty( function $getSelectionStyleValueForProperty (line 512) | function $getSelectionStyleValueForProperty( function INTERNAL_$isBlock (line 573) | function INTERNAL_$isBlock(node: LexicalNode): node is ElementNode { function $getAncestor (line 591) | function $getAncestor( FILE: resources/js/wysiwyg/lexical/selection/utils.ts function getDOMTextNode (line 14) | function getDOMTextNode(element: Node | null): Text | null { function getDOMIndexWithinParent (line 28) | function getDOMIndexWithinParent(node: ChildNode): [ParentNode, number] { function createDOMRange (line 47) | function createDOMRange( function createRectsFromDOMRange (line 124) | function createRectsFromDOMRange( function getStyleObjectFromRawCSS (line 177) | function getStyleObjectFromRawCSS(css: string): Record { function getStyleObjectFromCSS (line 198) | function getStyleObjectFromCSS(css: string): Record { function getCSSFromStyleObject (line 218) | function getCSSFromStyleObject(styles: Record): string { FILE: resources/js/wysiwyg/lexical/table/LexicalCaptionNode.ts class CaptionNode (line 14) | class CaptionNode extends ElementNode { method getType (line 15) | static getType(): string { method clone (line 19) | static clone(node: CaptionNode): CaptionNode { method createDOM (line 23) | createDOM(_config: EditorConfig, _editor: LexicalEditor): HTMLElement { method updateDOM (line 27) | updateDOM(_prevNode: unknown, _dom: HTMLElement, _config: EditorConfig... method isParentRequired (line 31) | isParentRequired(): true { method canBeEmpty (line 35) | canBeEmpty(): boolean { method exportJSON (line 39) | exportJSON(): SerializedElementNode { method insertDOMIntoParent (line 47) | insertDOMIntoParent(nodeDOM: HTMLElement, parentDOM: HTMLElement): boo... method importJSON (line 52) | static importJSON(serializedNode: SerializedElementNode): CaptionNode { method importDOM (line 56) | static importDOM(): DOMConversionMap | null { function $createCaptionNode (line 70) | function $createCaptionNode(): CaptionNode { function $isCaptionNode (line 74) | function $isCaptionNode(node: LexicalNode | null | undefined): node is C... function $tableHasCaption (line 78) | function $tableHasCaption(table: TableNode): boolean { function $addCaptionToTable (line 87) | function $addCaptionToTable(table: TableNode, text: string = ''): void { FILE: resources/js/wysiwyg/lexical/table/LexicalTableCellNode.ts type TableCellHeaderState (line 41) | type TableCellHeaderState = type SerializedTableCellNode (line 44) | type SerializedTableCellNode = Spread< class TableCellNode (line 58) | class TableCellNode extends ElementNode { method getType (line 74) | static getType(): string { method clone (line 78) | static clone(node: TableCellNode): TableCellNode { method importDOM (line 92) | static importDOM(): DOMConversionMap | null { method importJSON (line 105) | static importJSON(serializedNode: SerializedTableCellNode): TableCellN... method constructor (line 122) | constructor( method createDOM (line 136) | createDOM(config: EditorConfig): HTMLElement { method exportDOM (line 171) | exportDOM(editor: LexicalEditor): DOMExportOutput { method exportJSON (line 178) | exportJSON(): SerializedTableCellNode { method getColSpan (line 192) | getColSpan(): number { method setColSpan (line 196) | setColSpan(colSpan: number): this { method getRowSpan (line 201) | getRowSpan(): number { method setRowSpan (line 205) | setRowSpan(rowSpan: number): this { method getTag (line 210) | getTag(): string { method setHeaderStyles (line 214) | setHeaderStyles(headerState: TableCellHeaderState): TableCellHeaderSta... method getHeaderStyles (line 220) | getHeaderStyles(): TableCellHeaderState { method setWidth (line 224) | setWidth(width: number): number | null | undefined { method getWidth (line 230) | getWidth(): number | undefined { method clearWidth (line 234) | clearWidth(): void { method getStyles (line 239) | getStyles(): StyleMap { method setStyles (line 244) | setStyles(styles: StyleMap): void { method setAlignment (line 249) | setAlignment(alignment: CommonBlockAlignment) { method getAlignment (line 254) | getAlignment(): CommonBlockAlignment { method updateTag (line 259) | updateTag(tag: string): void { method getBackgroundColor (line 266) | getBackgroundColor(): null | string { method setBackgroundColor (line 270) | setBackgroundColor(newBackgroundColor: null | string): void { method toggleHeaderStyle (line 274) | toggleHeaderStyle(headerStateToToggle: TableCellHeaderState): TableCel... method hasHeaderState (line 286) | hasHeaderState(headerState: TableCellHeaderState): boolean { method hasHeader (line 290) | hasHeader(): boolean { method updateDOM (line 294) | updateDOM(prevNode: TableCellNode): boolean { method isShadowRoot (line 306) | isShadowRoot(): boolean { method collapseAtStart (line 310) | collapseAtStart(): true { method canBeEmpty (line 314) | canBeEmpty(): false { method canIndent (line 318) | canIndent(): false { function $convertTableCellNodeElement (line 323) | function $convertTableCellNodeElement( function $createTableCellNode (line 407) | function $createTableCellNode( function $isTableCellNode (line 415) | function $isTableCellNode( FILE: resources/js/wysiwyg/lexical/table/LexicalTableCommands.ts type InsertTableCommandPayloadHeaders (line 13) | type InsertTableCommandPayloadHeaders = type InsertTableCommandPayload (line 20) | type InsertTableCommandPayload = Readonly<{ constant INSERT_TABLE_COMMAND (line 26) | const INSERT_TABLE_COMMAND: LexicalCommand = FILE: resources/js/wysiwyg/lexical/table/LexicalTableNode.ts type SerializedTableNode (line 41) | type SerializedTableNode = Spread<{ class TableNode (line 47) | class TableNode extends CommonBlockNode { method getType (line 51) | static getType(): string { method clone (line 55) | static clone(node: TableNode): TableNode { method importDOM (line 63) | static importDOM(): DOMConversionMap | null { method importJSON (line 72) | static importJSON(_serializedNode: SerializedTableNode): TableNode { method constructor (line 80) | constructor(key?: NodeKey) { method exportJSON (line 84) | exportJSON(): SerializedTableNode { method createDOM (line 94) | createDOM(config: EditorConfig, editor?: LexicalEditor): HTMLElement { method updateDOM (line 114) | updateDOM(_prevNode: TableNode, dom: HTMLElement): boolean { method exportDOM (line 139) | exportDOM(editor: LexicalEditor): DOMExportOutput { method canBeEmpty (line 169) | canBeEmpty(): false { method isShadowRoot (line 173) | isShadowRoot(): boolean { method setColWidths (line 177) | setColWidths(widths: string[]) { method getColWidths (line 182) | getColWidths(): string[] { method getStyles (line 187) | getStyles(): StyleMap { method setStyles (line 192) | setStyles(styles: StyleMap): void { method getCordsFromCellNode (line 197) | getCordsFromCellNode( method getDOMCellFromCords (line 227) | getDOMCellFromCords( method getDOMCellFromCordsOrThrow (line 251) | getDOMCellFromCordsOrThrow( method getCellNodeFromCords (line 265) | getCellNodeFromCords( method getCellNodeFromCordsOrThrow (line 285) | getCellNodeFromCordsOrThrow( method canSelectBefore (line 299) | canSelectBefore(): true { method canIndent (line 303) | canIndent(): false { function $getElementForTableNode (line 308) | function $getElementForTableNode( function $convertTableElement (line 321) | function $convertTableElement(element: HTMLElement): DOMConversionOutput { function $createTableNode (line 332) | function $createTableNode(): TableNode { function $isTableNode (line 336) | function $isTableNode( FILE: resources/js/wysiwyg/lexical/table/LexicalTableObserver.ts type TableDOMCell (line 43) | type TableDOMCell = { type TableDOMRows (line 51) | type TableDOMRows = Array | undefined>; type TableDOMTable (line 53) | type TableDOMTable = { class TableObserver (line 59) | class TableObserver { method constructor (line 77) | constructor(editor: LexicalEditor, tableNodeKey: string) { method getTable (line 101) | getTable(): TableDOMTable { method removeListeners (line 105) | removeListeners() { method trackTable (line 111) | trackTable() { method clearHighlight (line 161) | clearHighlight() { method enableHighlightStyle (line 197) | enableHighlightStyle() { method disableHighlightStyle (line 215) | disableHighlightStyle() { method updateTableTableSelection (line 229) | updateTableTableSelection(selection: TableSelection | null): void { method setFocusCellForSelection (line 244) | setFocusCellForSelection(cell: TableDOMCell, ignoreStart = false) { method setAnchorCellForSelection (line 320) | setAnchorCellForSelection(cell: TableDOMCell) { method formatCells (line 340) | formatCells(type: TextFormatType) { method clearText (line 367) | clearText() { FILE: resources/js/wysiwyg/lexical/table/LexicalTableRowNode.ts type SerializedTableRowNode (line 25) | type SerializedTableRowNode = Spread< class TableRowNode (line 34) | class TableRowNode extends ElementNode { method getType (line 40) | static getType(): string { method clone (line 44) | static clone(node: TableRowNode): TableRowNode { method importDOM (line 50) | static importDOM(): DOMConversionMap | null { method importJSON (line 59) | static importJSON(serializedNode: SerializedTableRowNode): TableRowNode { method constructor (line 67) | constructor(key?: NodeKey) { method exportJSON (line 71) | exportJSON(): SerializedTableRowNode { method createDOM (line 81) | createDOM(config: EditorConfig): HTMLElement { method isShadowRoot (line 97) | isShadowRoot(): boolean { method getStyles (line 101) | getStyles(): StyleMap { method setStyles (line 106) | setStyles(styles: StyleMap): void { method setHeight (line 111) | setHeight(height: number): number | null | undefined { method getHeight (line 117) | getHeight(): number | undefined { method updateDOM (line 121) | updateDOM(prevNode: TableRowNode): boolean { method canBeEmpty (line 126) | canBeEmpty(): false { method canIndent (line 130) | canIndent(): false { function $convertTableRowElement (line 135) | function $convertTableRowElement(domNode: Node): DOMConversionOutput { function $createTableRowNode (line 149) | function $createTableRowNode(): TableRowNode { function $isTableRowNode (line 153) | function $isTableRowNode( FILE: resources/js/wysiwyg/lexical/table/LexicalTableSelection.ts type TableSelectionShape (line 28) | type TableSelectionShape = { type TableMapValueType (line 35) | type TableMapValueType = { type TableMapType (line 40) | type TableMapType = Array>; class TableSelection (line 42) | class TableSelection implements BaseSelection { method constructor (line 49) | constructor(tableKey: NodeKey, anchor: PointType, focus: PointType) { method getStartEndPoints (line 59) | getStartEndPoints(): [PointType, PointType] { method isBackward (line 68) | isBackward(): boolean { method getCachedNodes (line 72) | getCachedNodes(): LexicalNode[] | null { method setCachedNodes (line 76) | setCachedNodes(nodes: LexicalNode[] | null): void { method is (line 80) | is(selection: null | BaseSelection): boolean { method set (line 91) | set(tableKey: NodeKey, anchorCellKey: NodeKey, focusCellKey: NodeKey):... method clone (line 99) | clone(): TableSelection { method isCollapsed (line 103) | isCollapsed(): boolean { method extract (line 107) | extract(): Array { method insertRawText (line 111) | insertRawText(text: string): void { method insertText (line 115) | insertText(): void { method insertNodes (line 119) | insertNodes(nodes: Array) { method getShape (line 132) | getShape(): TableSelectionShape { method getNodes (line 181) | getNodes(): Array { method getTextContent (line 333) | getTextContent(): string { function $isTableSelection (line 346) | function $isTableSelection(x: unknown): x is TableSelection { function $createTableSelection (line 350) | function $createTableSelection(): TableSelection { function $getChildrenRecursively (line 356) | function $getChildrenRecursively(node: LexicalNode): Array { FILE: resources/js/wysiwyg/lexical/table/LexicalTableSelectionHelpers.ts constant LEXICAL_ELEMENT_KEY (line 76) | const LEXICAL_ELEMENT_KEY = '__lexicalTableSelection'; function applyTableHandlers (line 87) | function applyTableHandlers( type HTMLTableElementWithWithTableSelectionState (line 854) | type HTMLTableElementWithWithTableSelectionState = HTMLTableElement & function attachTableObserverToTableElement (line 857) | function attachTableObserverToTableElement( function getTableObserverFromTableElement (line 864) | function getTableObserverFromTableElement( function getDOMCellFromTarget (line 870) | function getDOMCellFromTarget(node: Node): TableDOMCell | null { function doesTargetContainText (line 893) | function doesTargetContainText(node: Node): boolean { function getTable (line 906) | function getTable(tableElement: HTMLElement): TableDOMTable { function $updateDOMForSelection (line 983) | function $updateDOMForSelection( function $forEachTableCell (line 1005) | function $forEachTableCell( function $addHighlightStyleToTable (line 1041) | function $addHighlightStyleToTable( function $removeHighlightStyleToTable (line 1052) | function $removeHighlightStyleToTable( type Direction (line 1068) | type Direction = 'backward' | 'forward' | 'up' | 'down'; function $isSelectionInTable (line 1186) | function $isSelectionInTable( function selectTableCellNode (line 1200) | function selectTableCellNode(tableCell: TableCellNode, fromStart: boolea... constant BROWSER_BLUE_RGB (line 1208) | const BROWSER_BLUE_RGB = '172,206,247'; function $addHighlightToDOM (line 1209) | function $addHighlightToDOM(editor: LexicalEditor, cell: TableDOMCell): ... function $removeHighlightFromDOM (line 1228) | function $removeHighlightFromDOM( function $findCellNode (line 1246) | function $findCellNode(node: LexicalNode): null | TableCellNode { function $findTableNode (line 1251) | function $findTableNode(node: LexicalNode): null | TableNode { function $handleArrowKey (line 1256) | function $handleArrowKey( function stopEvent (line 1560) | function stopEvent(event: Event) { function isTypeaheadMenuInView (line 1566) | function isTypeaheadMenuInView(editor: LexicalEditor) { function isExitingTableAnchor (line 1579) | function isExitingTableAnchor( function isExitingTableElementAnchor (line 1591) | function isExitingTableElementAnchor( function $isExitingTableTextAnchor (line 1604) | function $isExitingTableTextAnchor( function $handleTableExit (line 1630) | function $handleTableExit( function isExitingCell (line 1663) | function isExitingCell( function $getExitingToNode (line 1676) | function $getExitingToNode( function $insertParagraphAtTableEdge (line 1699) | function $insertParagraphAtTableEdge( function $getTableEdgeCursorPosition (line 1714) | function $getTableEdgeCursorPosition( FILE: resources/js/wysiwyg/lexical/table/LexicalTableUtils.ts function $createTableNodeWithDimensions (line 40) | function $createTableNodeWithDimensions( function $getTableCellNodeFromLexicalNode (line 82) | function $getTableCellNodeFromLexicalNode( function $getTableRowNodeFromTableCellNodeOrThrow (line 94) | function $getTableRowNodeFromTableCellNodeOrThrow( function $getTableNodeFromLexicalNodeOrThrow (line 106) | function $getTableNodeFromLexicalNodeOrThrow( function $getTableRowIndexFromTableCellNode (line 118) | function $getTableRowIndexFromTableCellNode( function $getTableColumnIndexFromTableCellNode (line 126) | function $getTableColumnIndexFromTableCellNode( type TableCellSiblings (line 133) | type TableCellSiblings = { function $getTableCellSiblingsFromTableCellNode (line 140) | function $getTableCellSiblingsFromTableCellNode( function $removeTableRowAtIndex (line 154) | function $removeTableRowAtIndex( function $insertTableRow (line 169) | function $insertTableRow( function $insertTableRow__EXPERIMENTAL (line 249) | function $insertTableRow__EXPERIMENTAL(insertAfter = true): void { function $insertTableColumn (line 318) | function $insertTableColumn( function $insertTableColumn__EXPERIMENTAL (line 377) | function $insertTableColumn__EXPERIMENTAL(insertAfter = true): void { function $deleteTableColumn (line 477) | function $deleteTableColumn( function $deleteTableRow__EXPERIMENTAL (line 500) | function $deleteTableRow__EXPERIMENTAL(): void { function $deleteTableColumn__EXPERIMENTAL (line 576) | function $deleteTableColumn__EXPERIMENTAL(): void { function $moveSelectionToCell (line 649) | function $moveSelectionToCell(cell: TableCellNode): void { function $insertFirst (line 658) | function $insertFirst(parent: ElementNode, node: LexicalNode): void { function $unmergeCell (line 667) | function $unmergeCell(): void { function $computeTableMap (line 733) | function $computeTableMap( function $computeTableMapSkipCellCheck (line 748) | function $computeTableMapSkipCellCheck( function $getNodeTriplet (line 807) | function $getNodeTriplet( function $getTableCellNodeRect (line 841) | function $getTableCellNodeRect(tableCellNode: TableCellNode): { FILE: resources/js/wysiwyg/lexical/table/__tests__/unit/LexicalTableNode.test.ts class ClipboardDataMock (line 25) | class ClipboardDataMock { method constructor (line 29) | constructor() { class ClipboardEventMock (line 35) | class ClipboardEventMock extends Event { method constructor (line 38) | constructor(type: string, options?: EventInit) { FILE: resources/js/wysiwyg/lexical/table/__tests__/unit/LexicalTableSelection.test.ts function init (line 46) | function init(onError?: () => void) { function update (line 62) | async function update(fn: () => void) { FILE: resources/js/wysiwyg/lexical/table/constants.ts constant PIXEL_VALUE_REG_EXP (line 9) | const PIXEL_VALUE_REG_EXP = /^(\d+(?:\.\d+)?)px$/; constant COLUMN_WIDTH (line 13) | const COLUMN_WIDTH = 75; FILE: resources/js/wysiwyg/lexical/utils/__tests__/unit/LexicalEventHelpers.test.ts method toJSON (line 39) | toJSON() { method toJSON (line 60) | toJSON() { function init (line 82) | async function init() { function update (line 143) | async function update(fn: () => void) { FILE: resources/js/wysiwyg/lexical/utils/__tests__/unit/LexicalRootHelpers.test.ts function $rootTextContent (line 12) | function $rootTextContent(): string { function $isRootTextContentEmpty (line 18) | function $isRootTextContentEmpty( function $isRootTextContentEmptyCurry (line 35) | function $isRootTextContentEmptyCurry( FILE: resources/js/wysiwyg/lexical/utils/__tests__/unit/LexicalUtilsKlassEqual.test.ts class MyEvent (line 12) | class MyEvent extends Event {} class MyEvent2 (line 14) | class MyEvent2 extends Event {} class MyEvent (line 20) | class MyEvent extends Event {} FILE: resources/js/wysiwyg/lexical/utils/index.ts constant CAN_USE_BEFORE_INPUT (line 55) | const CAN_USE_BEFORE_INPUT: boolean = CAN_USE_BEFORE_INPUT_; constant CAN_USE_DOM (line 56) | const CAN_USE_DOM: boolean = CAN_USE_DOM_; constant IS_ANDROID (line 57) | const IS_ANDROID: boolean = IS_ANDROID_; constant IS_ANDROID_CHROME (line 58) | const IS_ANDROID_CHROME: boolean = IS_ANDROID_CHROME_; constant IS_APPLE (line 59) | const IS_APPLE: boolean = IS_APPLE_; constant IS_APPLE_WEBKIT (line 60) | const IS_APPLE_WEBKIT: boolean = IS_APPLE_WEBKIT_; constant IS_CHROME (line 61) | const IS_CHROME: boolean = IS_CHROME_; constant IS_FIREFOX (line 62) | const IS_FIREFOX: boolean = IS_FIREFOX_; constant IS_IOS (line 63) | const IS_IOS: boolean = IS_IOS_; constant IS_SAFARI (line 64) | const IS_SAFARI: boolean = IS_SAFARI_; type DFSNode (line 66) | type DFSNode = Readonly<{ function addClassNamesToElement (line 79) | function addClassNamesToElement( function removeClassNamesFromElement (line 97) | function removeClassNamesFromElement( function isMimeType (line 115) | function isMimeType( function mediaFileReader (line 138) | function mediaFileReader( function $dfs (line 179) | function $dfs( function $getDepth (line 221) | function $getDepth(node: LexicalNode): number { function $getNextRightPreorderNode (line 240) | function $getNextRightPreorderNode( function $getNearestNodeOfType (line 270) | function $getNearestNodeOfType( function $getNearestBlockElementAncestorOrThrow (line 292) | function $getNearestBlockElementAncestorOrThrow( type DOMNodeToLexicalConversion (line 309) | type DOMNodeToLexicalConversion = (element: Node) => LexicalNode; type DOMNodeToLexicalConversionMap (line 311) | type DOMNodeToLexicalConversionMap = Record< function registerNestedElementResolver (line 359) | function registerNestedElementResolver( function $restoreEditorState (line 440) | function $restoreEditorState( function $insertNodeToNearestRoot (line 469) | function $insertNodeToNearestRoot(node: T): T { function $wrapNodeInElement (line 524) | function $wrapNodeInElement( type ObjectKlass (line 535) | type ObjectKlass = new (...args: any[]) => T; function objectKlassEquals (line 542) | function objectKlassEquals( function $filter (line 558) | function $filter( function $insertFirst (line 576) | function $insertFirst(parent: ElementNode, node: LexicalNode): void { function calculateZoomLevel (line 590) | function calculateZoomLevel(element: Element | null): number { function $isEditorIsNestedEditor (line 605) | function $isEditorIsNestedEditor(editor: LexicalEditor): boolean { FILE: resources/js/wysiwyg/lexical/utils/markSelection.ts function markSelection (line 23) | function markSelection( FILE: resources/js/wysiwyg/lexical/utils/mergeRegister.ts type Func (line 9) | type Func = () => void; function mergeRegister (line 36) | function mergeRegister(...func: Array): () => void { FILE: resources/js/wysiwyg/lexical/utils/positionNodeOnRange.ts function positionNodeOnRange (line 23) | function positionNodeOnRange( FILE: resources/js/wysiwyg/lexical/utils/px.ts function px (line 9) | function px(value: number) { FILE: resources/js/wysiwyg/lexical/yjs/Bindings.ts type ClientID (line 24) | type ClientID = number; type Binding (line 25) | type Binding = { type ExcludedProperties (line 44) | type ExcludedProperties = Map, Set>; function createBinding (line 46) | function createBinding( FILE: resources/js/wysiwyg/lexical/yjs/CollabDecoratorNode.ts class CollabDecoratorNode (line 19) | class CollabDecoratorNode { method constructor (line 25) | constructor(xmlElem: XmlElement, parent: CollabElementNode, type: stri... method getPrevNode (line 32) | getPrevNode(nodeMap: null | NodeMap): null | DecoratorNode { method getNode (line 41) | getNode(): null | DecoratorNode { method getSharedType (line 46) | getSharedType(): XmlElement { method getType (line 50) | getType(): string { method getKey (line 54) | getKey(): NodeKey { method getSize (line 58) | getSize(): number { method getOffset (line 62) | getOffset(): number { method syncPropertiesFromLexical (line 67) | syncPropertiesFromLexical( method syncPropertiesFromYjs (line 83) | syncPropertiesFromYjs( method destroy (line 96) | destroy(binding: Binding): void { function $createCollabDecoratorNode (line 102) | function $createCollabDecoratorNode( FILE: resources/js/wysiwyg/lexical/yjs/CollabElementNode.ts type IntentionallyMarkedAsDirtyElement (line 37) | type IntentionallyMarkedAsDirtyElement = boolean; class CollabElementNode (line 39) | class CollabElementNode { method constructor (line 51) | constructor( method getPrevNode (line 63) | getPrevNode(nodeMap: null | NodeMap): null | ElementNode { method getNode (line 72) | getNode(): null | ElementNode { method getSharedType (line 77) | getSharedType(): XmlText { method getType (line 81) | getType(): string { method getKey (line 85) | getKey(): NodeKey { method isEmpty (line 89) | isEmpty(): boolean { method getSize (line 93) | getSize(): number { method getOffset (line 97) | getOffset(): number { method syncPropertiesFromYjs (line 107) | syncPropertiesFromYjs( method applyChildrenYjsDelta (line 119) | applyChildrenYjsDelta( method syncChildrenFromYjs (line 229) | syncChildrenFromYjs(binding: Binding): void { method syncPropertiesFromLexical (line 367) | syncPropertiesFromLexical( method _syncChildFromLexical (line 380) | _syncChildFromLexical( method syncChildrenFromLexical (line 429) | syncChildrenFromLexical( method append (line 527) | append( method splice (line 559) | splice( method getChildOffset (line 623) | getChildOffset( method destroy (line 646) | destroy(binding: Binding): void { function $createCollabElementNode (line 658) | function $createCollabElementNode( FILE: resources/js/wysiwyg/lexical/yjs/CollabLineBreakNode.ts class CollabLineBreakNode (line 16) | class CollabLineBreakNode { method constructor (line 22) | constructor(map: YMap, parent: CollabElementNode) { method getNode (line 29) | getNode(): null | LineBreakNode { method getKey (line 34) | getKey(): NodeKey { method getSharedType (line 38) | getSharedType(): YMap { method getType (line 42) | getType(): string { method getSize (line 46) | getSize(): number { method getOffset (line 50) | getOffset(): number { method destroy (line 55) | destroy(binding: Binding): void { function $createCollabLineBreakNode (line 61) | function $createCollabLineBreakNode( FILE: resources/js/wysiwyg/lexical/yjs/CollabTextNode.ts function $diffTextContentAndApplyDelta (line 25) | function $diffTextContentAndApplyDelta( class CollabTextNode (line 46) | class CollabTextNode { method constructor (line 54) | constructor( method getPrevNode (line 68) | getPrevNode(nodeMap: null | NodeMap): null | TextNode { method getNode (line 77) | getNode(): null | TextNode { method getSharedType (line 82) | getSharedType(): YMap { method getType (line 86) | getType(): string { method getKey (line 90) | getKey(): NodeKey { method getSize (line 94) | getSize(): number { method getOffset (line 98) | getOffset(): number { method spliceText (line 103) | spliceText(index: number, delCount: number, newText: string): void { method syncPropertiesAndTextFromLexical (line 117) | syncPropertiesAndTextFromLexical( method syncPropertiesAndTextFromYjs (line 143) | syncPropertiesAndTextFromYjs( method destroy (line 163) | destroy(binding: Binding): void { function $createCollabTextNode (line 169) | function $createCollabTextNode( FILE: resources/js/wysiwyg/lexical/yjs/SyncCursors.ts type CursorSelection (line 36) | type CursorSelection = { type Cursor (line 50) | type Cursor = { function createRelativePosition (line 56) | function createRelativePosition( function createAbsolutePosition (line 102) | function createAbsolutePosition( function shouldUpdatePosition (line 112) | function shouldUpdatePosition( function createCursor (line 127) | function createCursor(name: string, color: string): Cursor { function destroySelection (line 135) | function destroySelection(binding: Binding, selection: CursorSelection) { function destroyCursor (line 148) | function destroyCursor(binding: Binding, cursor: Cursor) { function createCursorSelection (line 156) | function createCursorSelection( function updateCursor (line 186) | function updateCursor( function $syncLocalCursorPosition (line 298) | function $syncLocalCursorPosition( function $setPoint (line 345) | function $setPoint(point: Point, key: NodeKey, offset: number): void { function getCollabNodeAndOffset (line 362) | function getCollabNodeAndOffset( function syncCursorPositions (line 399) | function syncCursorPositions( function syncLexicalSelectionToYjs (line 485) | function syncLexicalSelectionToYjs( FILE: resources/js/wysiwyg/lexical/yjs/SyncEditorStates.ts function $syncEvent (line 39) | function $syncEvent(binding: Binding, event: any): void { function syncYjsChangesToLexical (line 81) | function syncYjsChangesToLexical( function $handleNormalizationMergeConflicts (line 148) | function $handleNormalizationMergeConflicts( type IntentionallyMarkedAsDirtyElement (line 195) | type IntentionallyMarkedAsDirtyElement = boolean; function syncLexicalUpdateToYjs (line 197) | function syncLexicalUpdateToYjs( FILE: resources/js/wysiwyg/lexical/yjs/Utils.ts function isExcludedProperty (line 58) | function isExcludedProperty( function getIndexOfYjsNode (line 85) | function getIndexOfYjsNode( function $getNodeByKeyOrThrow (line 114) | function $getNodeByKeyOrThrow(key: NodeKey): LexicalNode { function $createCollabNodeFromLexicalNode (line 120) | function $createCollabNodeFromLexicalNode( function getNodeTypeFromSharedType (line 163) | function getNodeTypeFromSharedType( function $getOrInitCollabNodeFromSharedType (line 174) | function $getOrInitCollabNodeFromSharedType( function createLexicalNodeFromCollabNode (line 220) | function createLexicalNodeFromCollabNode( function syncPropertiesFromYjs (line 256) | function syncPropertiesFromYjs( function syncPropertiesFromLexical (line 307) | function syncPropertiesFromLexical( function spliceString (line 365) | function spliceString( function getPositionFromElementAndOffset (line 374) | function getPositionFromElementAndOffset( function doesSelectionNeedRecovering (line 442) | function doesSelectionNeedRecovering( function syncWithTransaction (line 473) | function syncWithTransaction(binding: Binding, fn: () => void): void { function removeFromParent (line 477) | function removeFromParent(node: LexicalNode): void { function $moveSelectionToPreviousNode (line 528) | function $moveSelectionToPreviousNode( FILE: resources/js/wysiwyg/lexical/yjs/index.ts type UserState (line 16) | type UserState = { constant CONNECTED_COMMAND (line 24) | const CONNECTED_COMMAND: LexicalCommand = constant TOGGLE_CONNECT_COMMAND (line 26) | const TOGGLE_CONNECT_COMMAND: LexicalCommand = createCommand( type ProviderAwareness (line 29) | type ProviderAwareness = { type Provider (line 36) | interface Provider { type Operation (line 49) | type Operation = { type Delta (line 55) | type Delta = Array; type YjsNode (line 56) | type YjsNode = Record; type YjsEvent (line 57) | type YjsEvent = Record; function createUndoManager (line 62) | function createUndoManager( function initLocalState (line 71) | function initLocalState( function setLocalStateFocus (line 88) | function setLocalStateFocus( FILE: resources/js/wysiwyg/lexical/yjs/types.ts type XmlElement (line 15) | interface XmlElement { type XmlText (line 19) | interface XmlText { type Map (line 24) | interface Map { FILE: resources/js/wysiwyg/nodes.ts function getNodesForPageEditor (line 24) | function getNodesForPageEditor(): (KlassConstructor ... function getNodesForBasicEditor (line 46) | function getNodesForBasicEditor(): (KlassConstructor... function getNodesForCommentEditor (line 55) | function getNodesForCommentEditor(): (KlassConstructor boolean; type LexicalElementNodeCreator (line 83) | type LexicalElementNodeCreator = () => ElementNode; FILE: resources/js/wysiwyg/services/auto-links.ts function isLinkText (line 13) | function isLinkText(text: string): boolean { function handlePotentialLinkEvent (line 24) | function handlePotentialLinkEvent(node: TextNode, selection: BaseSelecti... function registerAutoLinks (line 55) | function registerAutoLinks(editor: LexicalEditor): () => void { FILE: resources/js/wysiwyg/services/common-events.ts type EditorEventContent (line 10) | type EditorEventContent = { function getContentToInsert (line 15) | function getContentToInsert(eventContent: EditorEventContent): string { function listen (line 19) | function listen(editor: LexicalEditor): void { FILE: resources/js/wysiwyg/services/drop-paste-handling.ts function $getNodeFromMouseEvent (line 16) | function $getNodeFromMouseEvent(event: MouseEvent, editor: LexicalEditor... function $insertNodesAtEvent (line 27) | function $insertNodesAtEvent(nodes: LexicalNode[], event: DragEvent, edi... function insertTemplateToEditor (line 41) | async function insertTemplateToEditor(editor: LexicalEditor, templateId:... function handleMediaInsert (line 52) | function handleMediaInsert(data: DataTransfer, context: EditorUiContext)... function handleImageLinkInsert (line 98) | function handleImageLinkInsert(data: DataTransfer, context: EditorUiCont... function createDropListener (line 113) | function createDropListener(context: EditorUiContext): (event: DragEvent... function createPasteListener (line 150) | function createPasteListener(context: EditorUiContext): (event: Clipboar... function registerDropPasteHandling (line 168) | function registerDropPasteHandling(context: EditorUiContext): () => void { FILE: resources/js/wysiwyg/services/keyboard-handling.ts function isSingleSelectedNode (line 23) | function isSingleSelectedNode(nodes: LexicalNode[]): boolean { function deleteSingleSelectedNode (line 38) | function deleteSingleSelectedNode(editor: LexicalEditor) { function insertAdjacentToSingleSelectedNode (line 51) | function insertAdjacentToSingleSelectedNode(editor: LexicalEditor, event... function focusAdjacentOrInsertForSingleSelectNode (line 77) | function focusAdjacentOrInsertForSingleSelectNode(editor: LexicalEditor,... function insertAfterDetails (line 96) | function insertAfterDetails(editor: LexicalEditor, event: KeyboardEvent|... function moveAfterDetailsOnEmptyLine (line 116) | function moveAfterDetailsOnEmptyLine(editor: LexicalEditor, event: Keybo... function getDetailsScenario (line 147) | function getDetailsScenario(editor: LexicalEditor): { function unwrapDetailsNode (line 176) | function unwrapDetailsNode(context: EditorUiContext, event: KeyboardEven... function $isSingleListItem (line 205) | function $isSingleListItem(nodes: LexicalNode[]): boolean { function handleInsetOnTab (line 218) | function handleInsetOnTab(editor: LexicalEditor, event: KeyboardEvent|nu... function registerKeyboardHandling (line 233) | function registerKeyboardHandling(context: EditorUiContext): () => void { FILE: resources/js/wysiwyg/services/mentions.ts function enterUserSelectMode (line 12) | function enterUserSelectMode(context: EditorUiContext, selection: RangeS... function selectMention (line 45) | function selectMention(context: EditorUiContext, event: KeyboardEvent): ... function registerMentions (line 59) | function registerMentions(context: EditorUiContext): () => void { FILE: resources/js/wysiwyg/services/mouse-handling.ts function isHardToEscapeNode (line 14) | function isHardToEscapeNode(node: LexicalNode): boolean { function $getContextNode (line 23) | function $getContextNode(event: MouseEvent): ElementNode { function insertBelowLastNode (line 36) | function insertBelowLastNode(context: EditorUiContext, event: MouseEvent... function registerMouseHandling (line 62) | function registerMouseHandling(context: EditorUiContext): () => void { FILE: resources/js/wysiwyg/services/selection-handling.ts function setSelectionIndicator (line 16) | function setSelectionIndicator(context: EditorUiContext): boolean { function registerSelectionHandling (line 39) | function registerSelectionHandling(context: EditorUiContext): () => void { FILE: resources/js/wysiwyg/services/shortcuts.ts function headerHandler (line 16) | function headerHandler(context: EditorUiContext, tag: HeadingTagType): b... function wrapFormatAction (line 22) | function wrapFormatAction(formatAction: (editor: LexicalEditor) => any):... function toggleInlineCode (line 30) | function toggleInlineCode(editor: LexicalEditor): boolean { type ShortcutAction (line 35) | type ShortcutAction = (editor: LexicalEditor, context: EditorUiContext) ... function createKeyDownListener (line 90) | function createKeyDownListener(context: EditorUiContext): (e: KeyboardEv... function keyboardEventToKeyComboString (line 104) | function keyboardEventToKeyComboString(event: KeyboardEvent): string { function isMac (line 116) | function isMac(): boolean { function overrideDefaultCommands (line 120) | function overrideDefaultCommands(editor: LexicalEditor) { function registerShortcuts (line 130) | function registerShortcuts(context: EditorUiContext) { FILE: resources/js/wysiwyg/ui/decorators/CodeBlockDecorator.ts class CodeBlockDecorator (line 8) | class CodeBlockDecorator extends EditorDecorator { method setup (line 17) | setup(element: HTMLElement) { method update (line 75) | update() { method render (line 92) | render(element: HTMLElement): void { FILE: resources/js/wysiwyg/ui/decorators/DiagramDecorator.ts class DiagramDecorator (line 9) | class DiagramDecorator extends EditorDecorator { method setup (line 12) | setup(element: HTMLElement) { method update (line 44) | update() { method render (line 48) | render(element: HTMLElement): void { FILE: resources/js/wysiwyg/ui/decorators/MentionDecorator.ts function userClickHandler (line 12) | function userClickHandler(onSelect: (id: number, name: string, slug: str... function handleUserSelectCancel (line 28) | function handleUserSelectCancel(context: EditorUiContext, selectList: HT... function handleUserListLoading (line 52) | function handleUserListLoading(selectList: HTMLElement) { function buildAndShowUserSelectorAtElement (line 95) | function buildAndShowUserSelectorAtElement(context: EditorUiContext, men... class MentionDecorator (line 122) | class MentionDecorator extends EditorDecorator { method setup (line 127) | setup(element: HTMLElement) { method showSelection (line 137) | showSelection() { method hideSelection (line 168) | hideSelection() { method revertMention (line 176) | revertMention() { method render (line 194) | render(element: HTMLElement): void { FILE: resources/js/wysiwyg/ui/defaults/buttons/alignments.ts function setAlignmentForSelection (line 18) | function setAlignmentForSelection(context: EditorUiContext, alignment: C... function setDirectionForSelection (line 42) | function setDirectionForSelection(context: EditorUiContext, direction: '... method action (line 56) | action(context: EditorUiContext) { method isActive (line 59) | isActive(selection: BaseSelection|null) { method action (line 67) | action(context: EditorUiContext) { method isActive (line 70) | isActive(selection: BaseSelection|null) { method action (line 78) | action(context: EditorUiContext) { method isActive (line 81) | isActive(selection: BaseSelection|null) { method action (line 89) | action(context: EditorUiContext) { method isActive (line 92) | isActive(selection: BaseSelection|null) { method action (line 100) | action(context: EditorUiContext) { method isActive (line 103) | isActive(selection: BaseSelection|null) { method action (line 111) | action(context: EditorUiContext) { method isActive (line 114) | isActive(selection: BaseSelection|null) { FILE: resources/js/wysiwyg/ui/defaults/buttons/block-formats.ts function buildCalloutButton (line 14) | function buildCalloutButton(category: CalloutCategory, name: string): Ed... function buildHeaderButton (line 40) | function buildHeaderButton(tag: HeadingTagType, name: string): EditorBut... method action (line 59) | action(context: EditorUiContext) { method isActive (line 62) | isActive(selection: BaseSelection|null): boolean { method action (line 69) | action(context: EditorUiContext) { method isActive (line 72) | isActive(selection: BaseSelection|null): boolean { FILE: resources/js/wysiwyg/ui/defaults/buttons/controls.ts method action (line 21) | action(context: EditorUiContext) { method isActive (line 25) | isActive(selection: BaseSelection|null): boolean { method setup (line 28) | setup(context: EditorUiContext, button: EditorButton) { method action (line 41) | action(context: EditorUiContext) { method isActive (line 45) | isActive(selection: BaseSelection|null): boolean { method setup (line 48) | setup(context: EditorUiContext, button: EditorButton) { method action (line 62) | async action(context: EditorUiContext) { method isActive (line 67) | isActive() { method action (line 75) | async action(context: EditorUiContext, button: EditorButton) { method isActive (line 81) | isActive(selection, context: EditorUiContext) { method action (line 89) | async action(context: EditorUiContext, button: EditorButton) { method isActive (line 93) | isActive(selection, context: EditorUiContext) { FILE: resources/js/wysiwyg/ui/defaults/buttons/inline-formats.ts function buildFormatButton (line 17) | function buildFormatButton(label: string, format: TextFormatType, icon: ... function colorAction (line 36) | function colorAction(context: EditorUiContext, property: string, color: ... method action (line 55) | action(context: EditorUiContext) { method isActive (line 66) | isActive() { FILE: resources/js/wysiwyg/ui/defaults/buttons/lists.ts function buildListButton (line 20) | function buildListButton(label: string, type: ListType, icon: string): E... method action (line 42) | action(context: EditorUiContext) { method isActive (line 47) | isActive() { method action (line 55) | action(context: EditorUiContext) { method isActive (line 60) | isActive() { FILE: resources/js/wysiwyg/ui/defaults/buttons/objects.ts method action (line 42) | action(context: EditorUiContext) { method isActive (line 48) | isActive(selection: BaseSelection | null): boolean { method action (line 56) | action(context: EditorUiContext) { method isActive (line 74) | isActive(selection: BaseSelection | null): boolean { method action (line 83) | action(context: EditorUiContext) { method isActive (line 101) | isActive(selection: BaseSelection | null): boolean { method action (line 109) | action(context: EditorUiContext) { method isActive (line 114) | isActive(selection: BaseSelection | null): boolean { method action (line 122) | action(context: EditorUiContext) { method isActive (line 125) | isActive(selection: BaseSelection | null): boolean { method action (line 138) | action(context: EditorUiContext) { method isActive (line 154) | isActive(selection: BaseSelection | null): boolean { method action (line 161) | action(context: EditorUiContext) { method isActive (line 164) | isActive(): boolean { method action (line 172) | action(context: EditorUiContext) { method isActive (line 180) | isActive(selection: BaseSelection | null): boolean { method action (line 188) | action(context: EditorUiContext) { method isActive (line 210) | isActive(selection: BaseSelection | null): boolean { method action (line 218) | action(context: EditorUiContext) { method isActive (line 226) | isActive(selection: BaseSelection | null): boolean { method action (line 234) | action(context: EditorUiContext) { method isActive (line 243) | isActive(selection: BaseSelection | null): boolean { method action (line 251) | action(context: EditorUiContext) { method isActive (line 260) | isActive(selection: BaseSelection | null): boolean { FILE: resources/js/wysiwyg/ui/defaults/buttons/tables.ts method action (line 51) | action(context: EditorUiContext) { method action (line 66) | action(context: EditorUiContext) { method action (line 86) | action(context: EditorUiContext) { method action (line 106) | action(context: EditorUiContext) { method isActive (line 114) | isActive() { method isDisabled (line 122) | isDisabled(selection) { method action (line 130) | action(context: EditorUiContext) { method action (line 142) | action(context: EditorUiContext) { method action (line 154) | action(context: EditorUiContext) { method action (line 166) | action(context: EditorUiContext) { method action (line 181) | action(context: EditorUiContext) { method action (line 197) | action(context: EditorUiContext) { method action (line 213) | action(context: EditorUiContext) { method action (line 229) | action(context: EditorUiContext) { method action (line 245) | action(context: EditorUiContext) { method action (line 261) | action(context: EditorUiContext) { method action (line 277) | action(context: EditorUiContext) { method action (line 293) | action(context: EditorUiContext) { method action (line 309) | action(context: EditorUiContext) { method isActive (line 314) | isActive() { method action (line 322) | action(context: EditorUiContext) { method isActive (line 327) | isActive() { method action (line 335) | action(context: EditorUiContext) { method isActive (line 340) | isActive() { method action (line 348) | action(context: EditorUiContext) { method action (line 363) | action(context: EditorUiContext) { method isDisabled (line 372) | isDisabled(selection) { method action (line 380) | action(context: EditorUiContext) { method isDisabled (line 386) | isDisabled(selection) { FILE: resources/js/wysiwyg/ui/defaults/forms/controls.ts method action (line 8) | async action(formData, context: EditorUiContext) { method action (line 23) | async action() { method build (line 28) | build(): EditorUiElement { FILE: resources/js/wysiwyg/ui/defaults/forms/objects.ts function $showImageForm (line 24) | function $showImageForm(image: ImageNode, context: EditorUiContext) { method action (line 41) | async action(formData, context: EditorUiContext) { method build (line 57) | build() { function $showLinkForm (line 100) | function $showLinkForm(link: LinkNode|null, context: EditorUiContext) { method action (line 130) | async action(formData, context: EditorUiContext) { method build (line 141) | build() { function $showMediaForm (line 189) | function $showMediaForm(media: MediaNode|null, context: EditorUiContext)... method action (line 214) | async action(formData, context: EditorUiContext) { method build (line 262) | build() { function $showDetailsForm (line 305) | function $showDetailsForm(details: DetailsNode|null, context: EditorUiCo... method action (line 318) | async action(formData, context: EditorUiContext) { FILE: resources/js/wysiwyg/ui/defaults/forms/tables.ts function $showCellPropertiesForm (line 66) | function $showCellPropertiesForm(cell: TableCellNode, context: EditorUiC... method action (line 85) | async action(formData, context: EditorUiContext) { method build (line 111) | build() { function $showRowPropertiesForm (line 176) | function $showRowPropertiesForm(row: TableRowNode, context: EditorUiCont... method action (line 190) | async action(formData, context: EditorUiContext) { function $showTablePropertiesForm (line 220) | function $showTablePropertiesForm(table: TableNode, context: EditorUiCon... method action (line 241) | async action(formData, context: EditorUiContext) { method build (line 286) | build() { FILE: resources/js/wysiwyg/ui/defaults/toolbars.ts function getMainEditorFullToolbar (line 84) | function getMainEditorFullToolbar(context: EditorUiContext): EditorConta... function getBasicEditorToolbar (line 224) | function getBasicEditorToolbar(context: EditorUiContext): EditorContaine... method content (line 247) | content() { method displayTargetLocator (line 253) | displayTargetLocator(originalTarget: HTMLElement): HTMLElement { method content (line 264) | content() { method displayTargetLocator (line 282) | displayTargetLocator(originalTarget: HTMLElement): HTMLElement { method content (line 288) | content() { FILE: resources/js/wysiwyg/ui/framework/blocks/action-field.ts class EditorActionField (line 6) | class EditorActionField extends EditorContainerUiElement { method constructor (line 10) | constructor(input: EditorUiElement, action: EditorButton) { method buildDOM (line 17) | buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/blocks/button-with-menu.ts class EditorButtonWithMenu (line 7) | class EditorButtonWithMenu extends EditorContainerUiElement { method constructor (line 11) | constructor(button: EditorButton, menuItems: EditorUiElement[]) { method buildDOM (line 24) | buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/blocks/color-button.ts class EditorColorButton (line 6) | class EditorColorButton extends EditorButton { method constructor (line 9) | constructor(definition: EditorBasicButtonDefinition, style: string) { method getColorBar (line 15) | getColorBar(): HTMLElement { method updateState (line 25) | updateState(state: EditorUiStateUpdate): void { FILE: resources/js/wysiwyg/ui/framework/blocks/color-field.ts class EditorColorField (line 8) | class EditorColorField extends EditorContainerUiElement { method constructor (line 12) | constructor(input: EditorFormField) { method buildDOM (line 25) | protected buildDOM(): HTMLElement { method onColorSelect (line 38) | onColorSelect(color: string, context: EditorUiContext): void { method setIconColor (line 42) | setIconColor(color: string) { function colorFieldBuilder (line 50) | function colorFieldBuilder(field: EditorFormFieldDefinition): EditorUiBu... FILE: resources/js/wysiwyg/ui/framework/blocks/color-picker.ts type EditorColorPickerCallback (line 39) | type EditorColorPickerCallback = (color: string, context: EditorUiContex... class EditorColorPicker (line 41) | class EditorColorPicker extends EditorUiElement { method constructor (line 45) | constructor(callback: EditorColorPickerCallback) { method buildDOM (line 50) | buildDOM(): HTMLElement { method storeCustomColorChoice (line 107) | storeCustomColorChoice(color: string) { method getCustomColorChoices (line 121) | getCustomColorChoices(): string[] { method onClick (line 125) | onClick(event: MouseEvent) { method setColor (line 133) | setColor(color: string) { FILE: resources/js/wysiwyg/ui/framework/blocks/dropdown-button.ts type EditorDropdownButtonOptions (line 6) | type EditorDropdownButtonOptions = { class EditorDropdownButton (line 22) | class EditorDropdownButton extends EditorContainerUiElement { method constructor (line 28) | constructor(options: EditorDropdownButtonOptions, children: EditorUiEl... method insertItems (line 51) | insertItems(...items: EditorUiElement[]) { method buildDOM (line 56) | protected buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/blocks/external-content.ts class ExternalContent (line 4) | class ExternalContent extends EditorUiElement { method constructor (line 11) | constructor(url: string) { method buildDOM (line 16) | buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/blocks/format-menu.ts class EditorFormatMenu (line 5) | class EditorFormatMenu extends EditorContainerUiElement { method buildDOM (line 6) | buildDOM(): HTMLElement { method updateState (line 31) | updateState(state: EditorUiStateUpdate) { method updateToggleLabel (line 53) | protected updateToggleLabel(text: string): void { FILE: resources/js/wysiwyg/ui/framework/blocks/format-preview-button.ts class FormatPreviewButton (line 4) | class FormatPreviewButton extends EditorButton { method constructor (line 7) | constructor(previewSampleElement: HTMLElement,definition: EditorButton... method buildDOM (line 12) | protected buildDOM(): HTMLButtonElement { method getStylesFromPreview (line 29) | protected getStylesFromPreview(): Record { FILE: resources/js/wysiwyg/ui/framework/blocks/link-field.ts class LinkField (line 8) | class LinkField extends EditorContainerUiElement { method constructor (line 12) | constructor(input: EditorFormField) { method buildDOM (line 18) | buildDOM(): HTMLElement { method updateFormFromHeader (line 45) | updateFormFromHeader(header: HeadingNode) { method getHeaderIdAndText (line 58) | getHeaderIdAndText(header: HeadingNode): Promise<{id: string, text: st... method updateDataList (line 73) | updateDataList(listEl: HTMLElement) { FILE: resources/js/wysiwyg/ui/framework/blocks/menu-button.ts class EditorMenuButton (line 5) | class EditorMenuButton extends EditorButton { method buildDOM (line 6) | protected buildDOM(): HTMLButtonElement { FILE: resources/js/wysiwyg/ui/framework/blocks/overflow-container.ts class EditorOverflowContainer (line 7) | class EditorOverflowContainer extends EditorContainerUiElement { method constructor (line 14) | constructor(label: string, size: number, children: EditorUiElement[]) { method addChild (line 29) | addChild(child: EditorUiElement, targetIndex: number = -1): void { method buildDOM (line 34) | protected buildDOM(): HTMLElement { method getLabel (line 51) | getLabel(): string { FILE: resources/js/wysiwyg/ui/framework/blocks/separator.ts class EditorSeparator (line 4) | class EditorSeparator extends EditorUiElement { method buildDOM (line 5) | buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/blocks/table-creator.ts class EditorTableCreator (line 7) | class EditorTableCreator extends EditorUiElement { method buildDOM (line 9) | buildDOM(): HTMLElement { method updateGridSelection (line 60) | updateGridSelection(rows: number, columns: number, cells: HTMLElement[... method onCellClick (line 69) | onCellClick(cell: HTMLElement) { FILE: resources/js/wysiwyg/ui/framework/buttons.ts type EditorBasicButtonDefinition (line 6) | interface EditorBasicButtonDefinition { type EditorButtonDefinition (line 12) | interface EditorButtonDefinition extends EditorBasicButtonDefinition { class EditorButton (line 24) | class EditorButton extends EditorUiElement { method constructor (line 30) | constructor(definition: EditorButtonDefinition|EditorBasicButtonDefini... method setContext (line 48) | setContext(context: EditorUiContext) { method buildDOM (line 57) | protected buildDOM(): HTMLButtonElement { method onClick (line 85) | protected onClick() { method updateActiveState (line 98) | protected updateActiveState(selection: BaseSelection|null) { method updateDisabledState (line 103) | protected updateDisabledState(selection: BaseSelection|null) { method setActiveState (line 110) | setActiveState(active: boolean) { method updateState (line 115) | updateState(state: EditorUiStateUpdate): void { method isActive (line 120) | isActive(): boolean { method getLabel (line 124) | getLabel(): string { method toggleDisabled (line 128) | toggleDisabled(disabled: boolean) { FILE: resources/js/wysiwyg/ui/framework/core.ts type EditorUiStateUpdate (line 6) | type EditorUiStateUpdate = { type EditorUiContext (line 11) | type EditorUiContext = { type EditorUiBuilderDefinition (line 22) | interface EditorUiBuilderDefinition { function isUiBuilderDefinition (line 26) | function isUiBuilderDefinition(object: any): object is EditorUiBuilderDe... method setContext (line 37) | setContext(context: EditorUiContext): void { method getContext (line 41) | getContext(): EditorUiContext { method getDOMElement (line 49) | getDOMElement(): HTMLElement { method rebuildDOM (line 57) | rebuildDOM(): HTMLElement { method trans (line 64) | trans(text: string) { method updateState (line 68) | updateState(state: EditorUiStateUpdate): void { method emitEvent (line 72) | emitEvent(name: string, data: object = {}): void { method onEvent (line 78) | onEvent(name: string, callback: (data: object) => any, listenTarget: HTM... method teardown (line 87) | teardown(): void { class EditorContainerUiElement (line 95) | class EditorContainerUiElement extends EditorUiElement { method constructor (line 98) | constructor(children: EditorUiElement[]) { method buildDOM (line 103) | protected buildDOM(): HTMLElement { method getChildren (line 107) | getChildren(): EditorUiElement[] { method addChildren (line 111) | protected addChildren(...children: EditorUiElement[]): void { method removeChildren (line 115) | protected removeChildren(...children: EditorUiElement[]): void { method removeChild (line 121) | protected removeChild(child: EditorUiElement) { method updateState (line 128) | updateState(state: EditorUiStateUpdate): void { method setContext (line 134) | setContext(context: EditorUiContext) { method teardown (line 141) | teardown() { class EditorSimpleClassContainer (line 149) | class EditorSimpleClassContainer extends EditorContainerUiElement { method constructor (line 152) | constructor(className: string, children: EditorUiElement[]) { method buildDOM (line 157) | protected buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/decorator.ts type EditorDecoratorAdapter (line 4) | interface EditorDecoratorAdapter { method constructor (line 16) | constructor(context: EditorUiContext) { method getNode (line 20) | protected getNode(): LexicalNode { method setNode (line 28) | setNode(node: LexicalNode) { method onDestroy (line 35) | protected onDestroy(callback: () => void) { method teardown (line 51) | teardown(): void { FILE: resources/js/wysiwyg/ui/framework/forms.ts type EditorFormFieldDefinition (line 11) | interface EditorFormFieldDefinition { type EditorSelectFormFieldDefinition (line 17) | interface EditorSelectFormFieldDefinition extends EditorFormFieldDefinit... type EditorFormFields (line 22) | type EditorFormFields = (EditorFormFieldDefinition|EditorUiBuilderDefini... type EditorFormTabDefinition (line 24) | interface EditorFormTabDefinition { type EditorFormDefinition (line 29) | interface EditorFormDefinition { class EditorFormField (line 35) | class EditorFormField extends EditorUiElement { method constructor (line 38) | constructor(definition: EditorFormFieldDefinition) { method setValue (line 43) | setValue(value: string) { method getName (line 53) | getName(): string { method buildDOM (line 57) | protected buildDOM(): HTMLElement { class EditorForm (line 84) | class EditorForm extends EditorContainerUiElement { method constructor (line 89) | constructor(definition: EditorFormDefinition) { method focusOnFirst (line 101) | focusOnFirst() { method setValues (line 108) | setValues(values: Record) { method setOnCancel (line 117) | setOnCancel(callback: () => void) { method setOnSuccessfulSubmit (line 121) | setOnSuccessfulSubmit(callback: () => void) { method getFieldByName (line 125) | protected getFieldByName(name: string): EditorFormField|null { method buildDOM (line 145) | protected buildDOM(): HTMLElement { class EditorFormTab (line 174) | class EditorFormTab extends EditorContainerUiElement { method constructor (line 180) | constructor(definition: EditorFormTabDefinition) { method getLabel (line 195) | public getLabel(): string { method getId (line 199) | public getId(): string { method buildDOM (line 203) | protected buildDOM(): HTMLElement { class EditorFormTabs (line 216) | class EditorFormTabs extends EditorContainerUiElement { method constructor (line 221) | constructor(definitions: EditorFormTabDefinition[]) { method buildDOM (line 229) | protected buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/helpers/dropdowns.ts type HandleDropdownParams (line 1) | interface HandleDropdownParams { function positionMenu (line 10) | function positionMenu(menu: HTMLElement, toggle: HTMLElement, showAside:... class DropDownManager (line 37) | class DropDownManager { method constructor (line 42) | constructor() { method teardown (line 49) | teardown(): void { method onWindowClick (line 53) | protected onWindowClick(event: MouseEvent): void { method closeAllNotContainingElement (line 58) | protected closeAllNotContainingElement(element: HTMLElement): void { method onMenuMouseOver (line 66) | protected onMenuMouseOver(event: MouseEvent): void { method closeAll (line 74) | public closeAll(): void { method closeDropdown (line 80) | protected closeDropdown(menu: HTMLElement): void { method openDropdown (line 95) | protected openDropdown(menu: HTMLElement): void { method getOptions (line 108) | protected getOptions(menu: HTMLElement): HandleDropdownParams { method handle (line 120) | public handle(options: HandleDropdownParams) { FILE: resources/js/wysiwyg/ui/framework/helpers/mouse-drag-tracker.ts type MouseDragTrackerDistance (line 2) | type MouseDragTrackerDistance = { type MouseDragTrackerOptions (line 7) | type MouseDragTrackerOptions = { class MouseDragTracker (line 13) | class MouseDragTracker { method constructor (line 22) | constructor(container: HTMLElement, dragTargetSelector: string, option... method teardown (line 33) | teardown() { method onMouseDown (line 39) | protected onMouseDown(event: MouseEvent) { method onMouseMove (line 55) | protected onMouseMove(event: MouseEvent) { method onMouseUp (line 64) | protected onMouseUp(event: MouseEvent) { FILE: resources/js/wysiwyg/ui/framework/helpers/node-resizer.ts function isNodeWithSize (line 9) | function isNodeWithSize(node: LexicalNode): node is NodeHasSize&LexicalN... class NodeResizer (line 13) | class NodeResizer { method constructor (line 23) | constructor(context: EditorUiContext) { method onSelectionChange (line 33) | onSelectionChange(selection: BaseSelection|null) { method getTargetDOM (line 49) | protected getTargetDOM(targetNode: LexicalNode|null): HTMLElement|null { method onTargetDOMLoad (line 61) | protected onTargetDOMLoad(): void { method teardown (line 65) | teardown() { method showForNode (line 70) | protected showForNode(node: NodeHasSize&LexicalNode, targetDOM: HTMLEl... method updateResizerPosition (line 92) | protected updateResizerPosition() { method updateDOMSize (line 109) | protected updateDOMSize(width: number, height: number): void { method hide (line 118) | protected hide() { method buildDOM (line 126) | protected buildDOM() { method setupTracker (line 137) | setupTracker(container: HTMLElement, node: NodeHasSize&LexicalNode, no... function registerNodeResizer (line 205) | function registerNodeResizer(context: EditorUiContext): (() => void) { FILE: resources/js/wysiwyg/ui/framework/helpers/table-resizer.ts type MarkerDomRecord (line 7) | type MarkerDomRecord = {x: HTMLElement, y: HTMLElement}; class TableResizer (line 9) | class TableResizer { method constructor (line 20) | constructor(editor: LexicalEditor, editScrollContainer: HTMLElement) { method teardown (line 27) | teardown() { method setupListeners (line 36) | protected setupListeners() { method onScrollOrResize (line 45) | protected onScrollOrResize(): void { method onTableMouseOver (line 49) | protected onTableMouseOver(event: MouseEvent): void { method onCellMouseMove (line 67) | protected onCellMouseMove(event: MouseEvent) { method updateMarkersTo (line 86) | protected updateMarkersTo(cell: HTMLElement, xPos: number, yPos: numbe... method hideMarkers (line 114) | protected hideMarkers(): void { method updateCurrentMarkerTargetPosition (line 121) | protected updateCurrentMarkerTargetPosition(): void { method getMarkers (line 132) | protected getMarkers(): MarkerDomRecord { method watchMarkerMouseDrags (line 148) | protected watchMarkerMouseDrags(wrapper: HTMLElement) { method getTargetCellColumnIndex (line 218) | protected getTargetCellColumnIndex(): number { function registerTableResizer (line 244) | function registerTableResizer(editor: LexicalEditor, editScrollContainer... FILE: resources/js/wysiwyg/ui/framework/helpers/table-selection-handler.ts class TableSelectionHandler (line 16) | class TableSelectionHandler { method constructor (line 22) | constructor(editor: LexicalEditor) { method init (line 27) | protected init() { method initializeTableNode (line 49) | protected initializeTableNode(tableNode: TableNode) { method teardown (line 65) | teardown() { function registerTableSelectionHandler (line 73) | function registerTableSelectionHandler(editor: LexicalEditor): (() => vo... FILE: resources/js/wysiwyg/ui/framework/helpers/task-list-handler.ts class TaskListHandler (line 4) | class TaskListHandler { method constructor (line 8) | constructor(editor: LexicalEditor, editorContainer: HTMLElement) { method setupListeners (line 14) | protected setupListeners() { method handleClick (line 19) | handleClick(event: MouseEvent) { method handleTaskListItemClick (line 27) | handleTaskListItemClick(listItem: HTMLElement, event: MouseEvent) { method teardown (line 47) | teardown() { function registerTaskListHandler (line 53) | function registerTaskListHandler(editor: LexicalEditor, editorContainer:... FILE: resources/js/wysiwyg/ui/framework/manager.ts type SelectionChangeHandler (line 11) | type SelectionChangeHandler = (selection: BaseSelection|null) => void; class EditorUIManager (line 13) | class EditorUIManager { method setContext (line 29) | setContext(context: EditorUiContext) { method getContext (line 35) | getContext(): EditorUiContext { method triggerStateUpdateForElement (line 43) | triggerStateUpdateForElement(element: EditorUiElement) { method registerModal (line 50) | registerModal(key: string, modalDefinition: EditorFormModalDefinition) { method createModal (line 54) | createModal(key: string): EditorFormModal { method setModalActive (line 66) | setModalActive(key: string, modal: EditorFormModal): void { method setModalInactive (line 70) | setModalInactive(key: string): void { method getActiveModal (line 74) | getActiveModal(key: string): EditorFormModal|null { method registerDecoratorType (line 78) | registerDecoratorType(type: string, decorator: typeof EditorDecorator) { method getDecorator (line 82) | protected getDecorator(decoratorType: string, nodeKey: string): Editor... method getDecoratorByNodeKey (line 98) | getDecoratorByNodeKey(nodeKey: string): EditorDecorator|null { method setToolbar (line 102) | setToolbar(toolbar: EditorContainerUiElement) { method getToolbar (line 112) | getToolbar(): EditorContainerUiElement|null { method registerContextToolbar (line 116) | registerContextToolbar(key: string, definition: EditorContextToolbarDe... method triggerStateUpdate (line 120) | triggerStateUpdate(update: EditorUiStateUpdate): void { method triggerStateRefresh (line 130) | triggerStateRefresh(): void { method triggerFutureStateRefresh (line 141) | triggerFutureStateRefresh(): void { method triggerSelectionChange (line 149) | protected triggerSelectionChange(selection: BaseSelection|null): void { method onSelectionChange (line 159) | onSelectionChange(handler: SelectionChangeHandler): void { method offSelectionChange (line 163) | offSelectionChange(handler: SelectionChangeHandler): void { method triggerLayoutUpdate (line 167) | triggerLayoutUpdate(): void { method getDefaultDirection (line 175) | getDefaultDirection(): 'rtl' | 'ltr' { method onTeardown (line 179) | onTeardown(callback: () => void): void { method teardown (line 183) | teardown(): void { method focus (line 212) | focus(): void { method updateContextToolbars (line 217) | protected updateContextToolbars(update: EditorUiStateUpdate): void { method setupEditor (line 259) | protected setupEditor(editor: LexicalEditor) { method setupEventListeners (line 300) | protected setupEventListeners() { FILE: resources/js/wysiwyg/ui/framework/modals.ts type EditorModalDefinition (line 6) | interface EditorModalDefinition { type EditorFormModalDefinition (line 10) | interface EditorFormModalDefinition extends EditorModalDefinition { class EditorFormModal (line 14) | class EditorFormModal extends EditorContainerUiElement { method constructor (line 19) | constructor(definition: EditorFormModalDefinition, key: string) { method show (line 25) | show(defaultValues: Record) { method hide (line 39) | hide() { method getForm (line 47) | getForm(): EditorForm { method buildDOM (line 51) | protected buildDOM(): HTMLElement { FILE: resources/js/wysiwyg/ui/framework/toolbars.ts type EditorContextToolbarDefinition (line 5) | type EditorContextToolbarDefinition = { class EditorContextToolbar (line 11) | class EditorContextToolbar extends EditorContainerUiElement { method constructor (line 15) | constructor(target: HTMLElement, children: EditorUiElement[]) { method buildDOM (line 20) | protected buildDOM(): HTMLElement { method updatePosition (line 26) | updatePosition() { method insert (line 58) | insert(children: EditorUiElement[]) { FILE: resources/js/wysiwyg/ui/index.ts function buildEditorUI (line 6) | function buildEditorUI(containerDOM: HTMLElement, editor: LexicalEditor,... FILE: resources/js/wysiwyg/utils/actions.ts function setEditorContentFromHtml (line 5) | function setEditorContentFromHtml(editor: LexicalEditor, html: string) { function appendHtmlToEditor (line 18) | function appendHtmlToEditor(editor: LexicalEditor, html: string) { function prependHtmlToEditor (line 26) | function prependHtmlToEditor(editor: LexicalEditor, html: string) { function insertHtmlIntoEditor (line 42) | function insertHtmlIntoEditor(editor: LexicalEditor, html: string) { function getEditorContentAsHtml (line 78) | function getEditorContentAsHtml(editor: LexicalEditor): Promise { function focusEditor (line 87) | function focusEditor(editor: LexicalEditor): void { FILE: resources/js/wysiwyg/utils/details.ts function $unwrapDetailsNode (line 3) | function $unwrapDetailsNode(node: DetailsNode) { FILE: resources/js/wysiwyg/utils/diagrams.ts function $isDiagramNode (line 10) | function $isDiagramNode(node: LexicalNode | null | undefined): node is D... function handleUploadError (line 14) | function handleUploadError(error: HttpError, context: EditorUiContext): ... function loadDiagramIdFromNode (line 23) | async function loadDiagramIdFromNode(editor: LexicalEditor, node: Diagra... function updateDrawingNodeFromData (line 34) | async function updateDrawingNodeFromData(context: EditorUiContext, node:... function $openDrawingEditorForNode (line 64) | function $openDrawingEditorForNode(context: EditorUiContext, node: Diagr... function showDiagramManager (line 75) | function showDiagramManager(callback: (image: EditorImageData) => any) { function showDiagramManagerForInsert (line 82) | function showDiagramManagerForInsert(context: EditorUiContext) { FILE: resources/js/wysiwyg/utils/dom.ts function el (line 1) | function el(tag: string, attrs: Record = {}, chil... function htmlToDom (line 21) | function htmlToDom(html: string): Document { function formatSizeValue (line 26) | function formatSizeValue(size: number | string, defaultSuffix: string = ... function sizeToPixels (line 34) | function sizeToPixels(size: string): number { type StyleMap (line 50) | type StyleMap = Map; function extractStyleMapFromElement (line 58) | function extractStyleMapFromElement(element: HTMLElement): StyleMap { function styleStringToStyleMap (line 66) | function styleStringToStyleMap(styleText: string): StyleMap { function styleMapToStyleString (line 85) | function styleMapToStyleString(map: StyleMap): string { function setOrRemoveAttribute (line 93) | function setOrRemoveAttribute(element: HTMLElement, name: string, value:... FILE: resources/js/wysiwyg/utils/formats.ts function toggleSelectionAsHeading (line 28) | function toggleSelectionAsHeading(editor: LexicalEditor, tag: HeadingTag... function toggleSelectionAsParagraph (line 37) | function toggleSelectionAsParagraph(editor: LexicalEditor) { function toggleSelectionAsBlockquote (line 43) | function toggleSelectionAsBlockquote(editor: LexicalEditor) { function toggleSelectionAsList (line 49) | function toggleSelectionAsList(editor: LexicalEditor, type: ListType) { function formatCodeBlock (line 64) | function formatCodeBlock(editor: LexicalEditor) { function cycleSelectionCalloutFormats (line 93) | function cycleSelectionCalloutFormats(editor: LexicalEditor) { function insertOrUpdateLink (line 123) | function insertOrUpdateLink(editor: LexicalEditor, linkDetails: {text: s... FILE: resources/js/wysiwyg/utils/images.ts type EditorImageData (line 5) | type EditorImageData = { function showImageManager (line 12) | function showImageManager(callback: (image: EditorImageData) => any) { function $createLinkedImageNodeFromImageData (line 19) | function $createLinkedImageNodeFromImageData(image: EditorImageData): Li... function uploadImageFile (line 32) | async function uploadImageFile(file: File, pageId: string): Promise any, s... FILE: resources/js/wysiwyg/utils/lists.ts function $nestListItem (line 7) | function $nestListItem(node: ListItemNode): ListItemNode { function $unnestListItem (line 43) | function $unnestListItem(node: ListItemNode): ListItemNode { function getListItemsForSelection (line 74) | function getListItemsForSelection(selection: BaseSelection|null): (ListI... function $reduceDedupeListItems (line 125) | function $reduceDedupeListItems(listItems: (ListItemNode|null)[]): ListI... function $setInsetForSelection (line 143) | function $setInsetForSelection(editor: LexicalEditor, change: number): v... FILE: resources/js/wysiwyg/utils/node-clipboard.ts type SerializedLexicalNodeWithChildren (line 3) | type SerializedLexicalNodeWithChildren = { function serializeNodeRecursive (line 8) | function serializeNodeRecursive(node: LexicalNode): SerializedLexicalNod... function unserializeNodeRecursive (line 16) | function unserializeNodeRecursive(editor: LexicalEditor, {node, children... class NodeClipboard (line 32) | class NodeClipboard { method set (line 35) | set(...nodes: LexicalNode[]): void { method get (line 42) | get(editor: LexicalEditor): T[] { method size (line 48) | size(): number { FILE: resources/js/wysiwyg/utils/nodes.ts function wrapTextNodes (line 17) | function wrapTextNodes(nodes: LexicalNode[]): LexicalNode[] { function $htmlToNodes (line 28) | function $htmlToNodes(editor: LexicalEditor, html: string): LexicalNode[] { function $htmlToBlockNodes (line 33) | function $htmlToBlockNodes(editor: LexicalEditor, html: string): Lexical... function $getParentOfType (line 37) | function $getParentOfType(node: LexicalNode, matcher: LexicalNodeMatcher... function $getAllNodesOfType (line 47) | function $getAllNodesOfType(matcher: LexicalNodeMatcher, root?: ElementN... function $getNearestBlockNodeForCoords (line 70) | function $getNearestBlockNodeForCoords(editor: LexicalEditor, x: number,... function $getNearestNodeBlockParent (line 88) | function $getNearestNodeBlockParent(node: LexicalNode): LexicalNode|null { function $sortNodes (line 100) | function $sortNodes(nodes: LexicalNode[]): LexicalNode[] { function $selectOrCreateAdjacent (line 124) | function $selectOrCreateAdjacent(node: LexicalNode, after: boolean): Ran... function nodeHasAlignment (line 140) | function nodeHasAlignment(node: object): node is NodeHasAlignment { function nodeHasInset (line 144) | function nodeHasInset(node: object): node is NodeHasInset { FILE: resources/js/wysiwyg/utils/selection.ts function getLastSelection (line 23) | function getLastSelection(editor: LexicalEditor): BaseSelection|null { function setLastSelection (line 27) | function setLastSelection(editor: LexicalEditor, selection: BaseSelectio... function $selectionContainsNodeType (line 31) | function $selectionContainsNodeType(selection: BaseSelection | null, mat... function $getNodeFromSelection (line 35) | function $getNodeFromSelection(selection: BaseSelection | null, matcher:... function $getTextNodeFromSelection (line 54) | function $getTextNodeFromSelection(selection: BaseSelection | null): Tex... function $selectionContainsTextFormat (line 58) | function $selectionContainsTextFormat(selection: BaseSelection | null, f... function $toggleSelectionBlockNodeType (line 79) | function $toggleSelectionBlockNodeType(matcher: LexicalNodeMatcher, crea... function $insertNewBlockNodeAtSelection (line 89) | function $insertNewBlockNodeAtSelection(node: LexicalNode, insertAfter: ... function $insertNewBlockNodesAtSelection (line 93) | function $insertNewBlockNodesAtSelection(nodes: LexicalNode[], insertAft... function $selectSingleNode (line 112) | function $selectSingleNode(node: LexicalNode) { function getFirstTextNodeInNodes (line 118) | function getFirstTextNodeInNodes(nodes: LexicalNode[]): TextNode|null { function getLastTextNodeInNodes (line 136) | function getLastTextNodeInNodes(nodes: LexicalNode[]): TextNode|null { function $selectNodes (line 155) | function $selectNodes(nodes: LexicalNode[]) { function $toggleSelection (line 169) | function $toggleSelection(editor: LexicalEditor) { function $selectionContainsNode (line 181) | function $selectionContainsNode(selection: BaseSelection | null, node: L... function $selectionContainsAlignment (line 196) | function $selectionContainsAlignment(selection: BaseSelection | null, al... function $selectionContainsDirection (line 211) | function $selectionContainsDirection(selection: BaseSelection | null, di... function $getBlockElementNodesInSelection (line 227) | function $getBlockElementNodesInSelection(selection: BaseSelection | nul... function $getDecoratorNodesInSelection (line 243) | function $getDecoratorNodesInSelection(selection: BaseSelection | null):... FILE: resources/js/wysiwyg/utils/table-copy-paste.ts function isRowClipboardEmpty (line 17) | function isRowClipboardEmpty(): boolean { function validateRowsToCopy (line 21) | function validateRowsToCopy(rows: TableRowNode[]): void { function validateRowsToPaste (line 42) | function validateRowsToPaste(rows: TableRowNode[], targetTable: TableNod... function $cutSelectedRowsToClipboard (line 62) | function $cutSelectedRowsToClipboard(): void { function $copySelectedRowsToClipboard (line 71) | function $copySelectedRowsToClipboard(): void { function $pasteClipboardRowsBefore (line 77) | function $pasteClipboardRowsBefore(editor: LexicalEditor): void { function $pasteClipboardRowsAfter (line 91) | function $pasteClipboardRowsAfter(editor: LexicalEditor): void { function setColumnClipboard (line 107) | function setColumnClipboard(columns: TableCellNode[][]): void { type TableRange (line 117) | type TableRange = {from: number, to: number}; function isColumnClipboardEmpty (line 119) | function isColumnClipboardEmpty(): boolean { function $getSelectionColumnRange (line 123) | function $getSelectionColumnRange(selection: BaseSelection|null): TableR... function $getTableColumnCellsFromSelection (line 144) | function $getTableColumnCellsFromSelection(range: TableRange, table: Tab... function validateColumnsToCopy (line 155) | function validateColumnsToCopy(columns: TableCellNode[][]): void { function $cutSelectedColumnsToClipboard (line 175) | function $cutSelectedColumnsToClipboard(): void { function $copySelectedColumnsToClipboard (line 197) | function $copySelectedColumnsToClipboard(): void { function validateColumnsToPaste (line 210) | function validateColumnsToPaste(columns: TableCellNode[][], targetTable:... function $pasteClipboardColumns (line 229) | function $pasteClipboardColumns(editor: LexicalEditor, isBefore: boolean... function $pasteClipboardColumnsBefore (line 270) | function $pasteClipboardColumnsBefore(editor: LexicalEditor): void { function $pasteClipboardColumnsAfter (line 274) | function $pasteClipboardColumnsAfter(editor: LexicalEditor): void { FILE: resources/js/wysiwyg/utils/table-map.ts type CellRange (line 3) | type CellRange = { class TableMap (line 10) | class TableMap { method constructor (line 19) | constructor(table: TableNode) { method buildCellMap (line 23) | protected buildCellMap(table: TableNode) { method getCellAtPosition (line 76) | public getCellAtPosition(x: number, y: number): TableCellNode { method getCellsInRange (line 85) | public getCellsInRange(range: CellRange): TableCellNode[] { method getCellsInColumn (line 102) | public getCellsInColumn(columnIndex: number): TableCellNode[] { method getRangeForCell (line 111) | public getRangeForCell(cell: TableCellNode): CellRange|null { FILE: resources/js/wysiwyg/utils/tables.ts function $getTableFromCell (line 15) | function $getTableFromCell(cell: TableCellNode): TableNode|null { function getTableColumnWidths (line 19) | function getTableColumnWidths(table: HTMLTableElement): string[] { function getMaxColRowFromTable (line 34) | function getMaxColRowFromTable(table: HTMLTableElement): HTMLTableRowEle... function extractWidthsFromRow (line 49) | function extractWidthsFromRow(row: HTMLTableRowElement | HTMLTableColEle... function extractWidthFromElement (line 53) | function extractWidthFromElement(element: HTMLElement): string { function $setTableColumnWidth (line 62) | function $setTableColumnWidth(node: TableNode, columnIndex: number, widt... function $getTableColumnWidth (line 85) | function $getTableColumnWidth(editor: LexicalEditor, node: TableNode, co... function $getCellColumnIndex (line 104) | function $getCellColumnIndex(node: TableCellNode): number { function $setTableCellColumnWidth (line 123) | function $setTableCellColumnWidth(cell: TableCellNode, width: string): v... function $getTableCellColumnWidth (line 132) | function $getTableCellColumnWidth(editor: LexicalEditor, cell: TableCell... function buildColgroupFromTableWidths (line 143) | function buildColgroupFromTableWidths(colWidths: string[]): HTMLElement|... function $getTableCellsFromSelection (line 160) | function $getTableCellsFromSelection(selection: BaseSelection|null): Tab... function $mergeTableCellsInSelection (line 170) | function $mergeTableCellsInSelection(selection: TableSelection): void { function $getTableRowsFromSelection (line 217) | function $getTableRowsFromSelection(selection: BaseSelection|null): Tabl... function $getTableFromSelection (line 230) | function $getTableFromSelection(selection: BaseSelection|null): TableNod... function $clearTableSizes (line 244) | function $clearTableSizes(table: TableNode): void { function $clearTableFormatting (line 271) | function $clearTableFormatting(table: TableNode): void { function $forEachTableCell (line 295) | function $forEachTableCell(table: TableNode, callback: (c: TableCellNode... function $getCellPaddingForTable (line 313) | function $getCellPaddingForTable(table: TableNode): string { FILE: tests/Activity/AuditLogApiTest.php class AuditLogApiTest (line 10) | class AuditLogApiTest extends TestCase method test_user_and_settings_manage_permissions_needed (line 14) | public function test_user_and_settings_manage_permissions_needed() method test_index_endpoint_returns_expected_data (line 36) | public function test_index_endpoint_returns_expected_data() FILE: tests/Activity/AuditLogTest.php class AuditLogTest (line 14) | class AuditLogTest extends TestCase method setUp (line 18) | protected function setUp(): void method test_only_accessible_with_right_permissions (line 24) | public function test_only_accessible_with_right_permissions() method test_shows_activity (line 42) | public function test_shows_activity() method test_shows_name_for_deleted_items (line 57) | public function test_shows_name_for_deleted_items() method test_shows_activity_for_deleted_users (line 72) | public function test_shows_activity_for_deleted_users() method test_deleted_user_shows_if_user_created_date_is_later_than_activity (line 86) | public function test_deleted_user_shows_if_user_created_date_is_later_... method test_filters_by_key (line 102) | public function test_filters_by_key() method test_date_filters (line 115) | public function test_date_filters() method test_user_filter (line 137) | public function test_user_filter() method test_ip_address_logged_and_visible (line 158) | public function test_ip_address_logged_and_visible() method test_ip_address_is_searchable (line 182) | public function test_ip_address_is_searchable() method test_ip_address_not_logged_in_demo_mode (line 207) | public function test_ip_address_not_logged_in_demo_mode() method test_ip_address_respects_precision_setting (line 230) | public function test_ip_address_respects_precision_setting() FILE: tests/Activity/CommentDisplayTest.php class CommentDisplayTest (line 8) | class CommentDisplayTest extends TestCase method test_reply_comments_are_nested (line 10) | public function test_reply_comments_are_nested() method test_comments_are_visible_in_the_page_editor (line 33) | public function test_comments_are_visible_in_the_page_editor() method test_comment_creator_name_truncated (line 43) | public function test_comment_creator_name_truncated() method test_comment_editor_js_loaded_with_create_or_edit_permissions (line 55) | public function test_comment_editor_js_loaded_with_create_or_edit_perm... method test_comment_displays_relative_times (line 82) | public function test_comment_displays_relative_times() method test_comment_displays_reference_if_set (line 99) | public function test_comment_displays_reference_if_set() method test_archived_comments_are_shown_in_their_own_container (line 112) | public function test_archived_comments_are_shown_in_their_own_container() FILE: tests/Activity/CommentMentionTest.php class CommentMentionTest (line 10) | class CommentMentionTest extends TestCase method test_mentions_are_notified (line 12) | public function test_mentions_are_notified() method test_mentions_are_not_notified_if_mentioned_by_same_user (line 37) | public function test_mentions_are_not_notified_if_mentioned_by_same_us... method test_mentions_are_logged_to_the_database_even_if_not_notified (line 51) | public function test_mentions_are_logged_to_the_database_even_if_not_n... method test_comment_updates_will_send_notifications_only_if_mention_is_new (line 80) | public function test_comment_updates_will_send_notifications_only_if_m... method test_notification_limited_to_those_with_view_permissions (line 110) | public function test_notification_limited_to_those_with_view_permissio... FILE: tests/Activity/CommentSettingTest.php class CommentSettingTest (line 7) | class CommentSettingTest extends TestCase method test_comment_disable (line 9) | public function test_comment_disable() method test_comment_enable (line 19) | public function test_comment_enable() FILE: tests/Activity/CommentStoreTest.php class CommentStoreTest (line 9) | class CommentStoreTest extends TestCase method test_add_comment (line 11) | public function test_add_comment() method test_add_comment_stores_content_reference_only_if_format_valid (line 35) | public function test_add_comment_stores_content_reference_only_if_form... method test_comment_edit (line 62) | public function test_comment_edit() method test_comment_delete (line 88) | public function test_comment_delete() method test_comment_archive_and_unarchive (line 108) | public function test_comment_archive_and_unarchive() method test_archive_endpoints_require_delete_or_edit_permissions (line 136) | public function test_archive_endpoints_require_delete_or_edit_permissi... method test_non_top_level_comments_cant_be_archived_or_unarchived (line 168) | public function test_non_top_level_comments_cant_be_archived_or_unarch... method test_scripts_cannot_be_injected_via_comment_html (line 191) | public function test_scripts_cannot_be_injected_via_comment_html() method test_scripts_are_removed_even_if_already_in_db (line 216) | public function test_scripts_are_removed_even_if_already_in_db() method test_comment_html_is_limited (line 230) | public function test_comment_html_is_limited() method test_comment_html_spans_are_cleaned (line 253) | public function test_comment_html_spans_are_cleaned() FILE: tests/Activity/CommentsApiTest.php class CommentsApiTest (line 10) | class CommentsApiTest extends TestCase method test_endpoint_permission_controls (line 14) | public function test_endpoint_permission_controls() method test_index (line 57) | public function test_index() method test_create (line 86) | public function test_create() method test_read (line 125) | public function test_read() method test_update (line 166) | public function test_update() method test_update_cannot_archive_replies (line 211) | public function test_update_cannot_archive_replies() method test_destroy (line 235) | public function test_destroy() FILE: tests/Activity/MentionParserTest.php class MentionParserTest (line 8) | class MentionParserTest extends TestCase method test_it_extracts_mentions (line 10) | public function test_it_extracts_mentions() FILE: tests/Activity/WatchTest.php class WatchTest (line 21) | class WatchTest extends TestCase method test_watch_action_exists_on_entity_unless_active (line 23) | public function test_watch_action_exists_on_entity_unless_active() method test_watch_action_only_shows_with_permission (line 42) | public function test_watch_action_only_shows_with_permission() method test_watch_update (line 63) | public function test_watch_update() method test_watch_update_fails_for_guest (line 96) | public function test_watch_update_fails_for_guest() method test_watch_detail_display_reflects_state (line 113) | public function test_watch_detail_display_reflects_state() method test_watch_detail_ignore_indicator_cascades (line 134) | public function test_watch_detail_ignore_indicator_cascades() method test_watch_option_menu_shows_current_active_state (line 145) | public function test_watch_option_menu_shows_current_active_state() method test_watch_option_menu_limits_options_for_pages (line 163) | public function test_watch_option_menu_limits_options_for_pages() method test_notify_own_page_changes (line 177) | public function test_notify_own_page_changes() method test_notify_own_page_comments (line 191) | public function test_notify_own_page_comments() method test_notify_comment_replies (line 206) | public function test_notify_comment_replies() method test_notify_watch_parent_book_ignore (line 233) | public function test_notify_watch_parent_book_ignore() method test_notify_watch_parent_book_comments (line 251) | public function test_notify_watch_parent_book_comments() method test_notify_watch_parent_book_updates (line 277) | public function test_notify_watch_parent_book_updates() method test_notify_watch_parent_book_new (line 306) | public function test_notify_watch_parent_book_new() method test_notify_watch_page_ignore_when_no_page_owner (line 330) | public function test_notify_watch_page_ignore_when_no_page_owner() method test_notifications_sent_in_right_language (line 348) | public function test_notifications_sent_in_right_language() method test_failed_notifications_dont_block_and_log_errors (line 388) | public function test_failed_notifications_dont_block_and_log_errors() method test_notifications_not_sent_if_lacking_view_permission_for_related_item (line 411) | public function test_notifications_not_sent_if_lacking_view_permission... method test_watches_deleted_on_user_delete (line 428) | public function test_watches_deleted_on_user_delete() method test_watches_deleted_on_item_delete (line 442) | public function test_watches_deleted_on_item_delete() method test_page_path_in_notifications_limited_by_permissions (line 456) | public function test_page_path_in_notifications_limited_by_permissions() FILE: tests/Activity/WebhookCallTest.php class WebhookCallTest (line 16) | class WebhookCallTest extends TestCase method test_webhook_listening_to_all_called_on_event (line 18) | public function test_webhook_listening_to_all_called_on_event() method test_webhook_listening_to_specific_event_called_on_event (line 26) | public function test_webhook_listening_to_specific_event_called_on_eve... method test_webhook_listening_to_specific_event_not_called_on_other_event (line 34) | public function test_webhook_listening_to_specific_event_not_called_on... method test_inactive_webhook_not_called_on_event (line 42) | public function test_inactive_webhook_not_called_on_event() method test_webhook_runs_for_delete_actions (line 50) | public function test_webhook_runs_for_delete_actions() method test_failed_webhook_call_logs_error (line 70) | public function test_failed_webhook_call_logs_error() method test_webhook_call_exception_is_caught_and_logged (line 86) | public function test_webhook_call_exception_is_caught_and_logged() method test_webhook_uses_ssr_hosts_option_if_set (line 103) | public function test_webhook_uses_ssr_hosts_option_if_set() method test_webhook_call_data_format (line 117) | public function test_webhook_call_data_format() method runEvent (line 139) | protected function runEvent(string $event, $detail = '', ?User $user =... method newWebhook (line 151) | protected function newWebhook(array $attrs, array $events): Webhook FILE: tests/Activity/WebhookFormatTesting.php class WebhookFormatTesting (line 11) | class WebhookFormatTesting extends TestCase method test_entity_events_show_related_user_info (line 13) | public function test_entity_events_show_related_user_info() method test_page_create_and_update_events_show_revision_info (line 30) | public function test_page_create_and_update_events_show_revision_info() method getWebhookData (line 41) | protected function getWebhookData(string $event, $detail): array FILE: tests/Activity/WebhookManagementTest.php class WebhookManagementTest (line 9) | class WebhookManagementTest extends TestCase method test_index_view (line 11) | public function test_index_view() method test_create_view (line 27) | public function test_create_view() method test_store (line 35) | public function test_store() method test_edit_view (line 66) | public function test_edit_view() method test_update (line 78) | public function test_update() method test_delete_view (line 109) | public function test_delete_view() method test_destroy (line 120) | public function test_destroy() method test_settings_manage_permission_required_for_webhook_routes (line 136) | public function test_settings_manage_permission_required_for_webhook_r... method newWebhook (line 164) | protected function newWebhook(array $attrs = [], array $events = ['all... FILE: tests/Api/ApiAuthTest.php class ApiAuthTest (line 11) | class ApiAuthTest extends TestCase method test_requests_succeed_with_default_auth (line 17) | public function test_requests_succeed_with_default_auth() method test_no_token_throws_error (line 32) | public function test_no_token_throws_error() method test_bad_token_format_throws_error (line 39) | public function test_bad_token_format_throws_error() method test_token_with_non_existing_id_throws_error (line 46) | public function test_token_with_non_existing_id_throws_error() method test_token_with_bad_secret_value_throws_error (line 53) | public function test_token_with_bad_secret_value_throws_error() method test_api_access_permission_required_to_access_api (line 60) | public function test_api_access_permission_required_to_access_api() method test_api_access_permission_required_to_access_api_with_session_auth (line 75) | public function test_api_access_permission_required_to_access_api_with... method test_access_prevented_for_guest_users_with_api_permission_while_public_access_disabled (line 97) | public function test_access_prevented_for_guest_users_with_api_permiss... method test_only_get_requests_are_supported_with_session_auth (line 117) | public function test_only_get_requests_are_supported_with_session_auth() method test_token_expiry_checked (line 139) | public function test_token_expiry_checked() method test_email_confirmation_checked_using_api_auth (line 155) | public function test_email_confirmation_checked_using_api_auth() method test_rate_limit_headers_active_on_requests (line 169) | public function test_rate_limit_headers_active_on_requests() method test_rate_limit_hit_gives_json_error (line 178) | public function test_rate_limit_hit_gives_json_error() FILE: tests/Api/ApiConfigTest.php class ApiConfigTest (line 7) | class ApiConfigTest extends TestCase method test_default_item_count_reflected_in_listing_requests (line 13) | public function test_default_item_count_reflected_in_listing_requests() method test_default_item_count_does_not_limit_count_param (line 26) | public function test_default_item_count_does_not_limit_count_param() method test_max_item_count_limits_listing_requests (line 34) | public function test_max_item_count_limits_listing_requests() method test_requests_per_min_alters_rate_limit (line 46) | public function test_requests_per_min_alters_rate_limit() FILE: tests/Api/ApiDocsTest.php class ApiDocsTest (line 7) | class ApiDocsTest extends TestCase method test_api_endpoint_redirects_to_docs (line 13) | public function test_api_endpoint_redirects_to_docs() method test_docs_page_returns_view_with_docs_content (line 19) | public function test_docs_page_returns_view_with_docs_content() method test_docs_json_endpoint_returns_json (line 28) | public function test_docs_json_endpoint_returns_json() FILE: tests/Api/ApiListingTest.php class ApiListingTest (line 8) | class ApiListingTest extends TestCase method test_count_parameter_limits_responses (line 14) | public function test_count_parameter_limits_responses() method test_offset_parameter (line 26) | public function test_offset_parameter() method test_sort_parameter (line 38) | public function test_sort_parameter() method test_filter_parameter (line 60) | public function test_filter_parameter() method test_total_on_results_shows_correctly (line 86) | public function test_total_on_results_shows_correctly() method test_total_on_results_shows_correctly_when_offset_provided (line 94) | public function test_total_on_results_shows_correctly_when_offset_prov... FILE: tests/Api/AttachmentsApiTest.php class AttachmentsApiTest (line 11) | class AttachmentsApiTest extends TestCase method test_index_endpoint_returns_expected_book (line 17) | public function test_index_endpoint_returns_expected_book() method test_attachments_listing_based_upon_page_visibility (line 37) | public function test_attachments_listing_based_upon_page_visibility() method test_create_endpoint_for_link_attachment (line 63) | public function test_create_endpoint_for_link_attachment() method test_create_endpoint_for_upload_attachment (line 81) | public function test_create_endpoint_for_upload_attachment() method test_upload_limit_restricts_attachment_uploads (line 101) | public function test_upload_limit_restricts_attachment_uploads() method test_name_needed_to_create (line 124) | public function test_name_needed_to_create() method test_link_or_file_needed_to_create (line 139) | public function test_link_or_file_needed_to_create() method test_message_shown_if_file_is_not_a_valid_file (line 157) | public function test_message_shown_if_file_is_not_a_valid_file() method test_read_endpoint_for_link_attachment (line 173) | public function test_read_endpoint_for_link_attachment() method test_read_endpoint_for_file_attachment (line 206) | public function test_read_endpoint_for_file_attachment() method test_attachment_not_visible_on_other_users_draft (line 246) | public function test_attachment_not_visible_on_other_users_draft() method test_update_endpoint (line 268) | public function test_update_endpoint() method test_update_link_attachment_to_file (line 285) | public function test_update_link_attachment_to_file() method test_update_file_attachment_to_link (line 304) | public function test_update_file_attachment_to_link() method test_update_does_not_require_name (line 321) | public function test_update_does_not_require_name() method test_delete_endpoint (line 348) | public function test_delete_endpoint() method createAttachmentForPage (line 360) | protected function createAttachmentForPage(Page $page, $attributes = [... method getTestFile (line 380) | protected function getTestFile(string $fileName): UploadedFile FILE: tests/Api/BooksApiTest.php class BooksApiTest (line 10) | class BooksApiTest extends TestCase method test_index_endpoint_returns_expected_book (line 16) | public function test_index_endpoint_returns_expected_book() method test_index_endpoint_includes_cover_if_set (line 35) | public function test_index_endpoint_includes_cover_if_set() method test_create_endpoint (line 56) | public function test_create_endpoint() method test_create_endpoint_with_html (line 78) | public function test_create_endpoint_with_html() method test_book_name_needed_to_create (line 99) | public function test_book_name_needed_to_create() method test_read_endpoint (line 119) | public function test_read_endpoint() method test_read_endpoint_includes_chapter_and_page_contents (line 143) | public function test_read_endpoint_includes_chapter_and_page_contents() method test_read_endpoint_contents_nested_pages_has_permissions_applied (line 174) | public function test_read_endpoint_contents_nested_pages_has_permissio... method test_read_endpoint_lists_visible_shelves_the_book_is_assigned_to (line 191) | public function test_read_endpoint_lists_visible_shelves_the_book_is_a... method test_update_endpoint (line 222) | public function test_update_endpoint() method test_update_endpoint_with_html (line 245) | public function test_update_endpoint_with_html() method test_update_increments_updated_date_if_only_tags_are_sent (line 260) | public function test_update_increments_updated_date_if_only_tags_are_s... method test_update_cover_image_control (line 275) | public function test_update_cover_image_control() method test_delete_endpoint (line 311) | public function test_delete_endpoint() FILE: tests/Api/ChaptersApiTest.php class ChaptersApiTest (line 11) | class ChaptersApiTest extends TestCase method test_index_endpoint_returns_expected_chapter (line 17) | public function test_index_endpoint_returns_expected_chapter() method test_create_endpoint (line 38) | public function test_create_endpoint() method test_create_endpoint_with_html (line 75) | public function test_create_endpoint_with_html() method test_chapter_name_needed_to_create (line 97) | public function test_chapter_name_needed_to_create() method test_chapter_book_id_needed_to_create (line 113) | public function test_chapter_book_id_needed_to_create() method test_read_endpoint (line 128) | public function test_read_endpoint() method test_update_endpoint (line 173) | public function test_update_endpoint() method test_update_endpoint_with_html (line 204) | public function test_update_endpoint_with_html() method test_update_increments_updated_date_if_only_tags_are_sent (line 221) | public function test_update_increments_updated_date_if_only_tags_are_s... method test_update_with_book_id_moves_chapter (line 236) | public function test_update_with_book_id_moves_chapter() method test_update_with_new_book_id_requires_delete_permission (line 251) | public function test_update_with_new_book_id_requires_delete_permission() method test_delete_endpoint (line 263) | public function test_delete_endpoint() FILE: tests/Api/ContentPermissionsApiTest.php class ContentPermissionsApiTest (line 7) | class ContentPermissionsApiTest extends TestCase method test_user_roles_manage_permission_needed_for_all_endpoints (line 13) | public function test_user_roles_manage_permission_needed_for_all_endpo... method test_read_endpoint_shows_expected_detail (line 37) | public function test_read_endpoint_shows_expected_detail() method test_read_endpoint_shows_expected_detail_when_items_are_empty (line 77) | public function test_read_endpoint_shows_expected_detail_when_items_ar... method test_update_endpoint_can_change_owner (line 101) | public function test_update_endpoint_can_change_owner() method test_update_can_set_role_permissions (line 125) | public function test_update_can_set_role_permissions() method test_update_can_set_fallback_permissions (line 178) | public function test_update_can_set_fallback_permissions() method test_update_can_clear_roles_permissions (line 209) | public function test_update_can_clear_roles_permissions() method test_update_can_clear_fallback_permissions (line 235) | public function test_update_can_clear_fallback_permissions() method test_update_can_both_provide_owner_and_fallback_permissions (line 263) | public function test_update_can_both_provide_owner_and_fallback_permis... FILE: tests/Api/ExportsApiTest.php class ExportsApiTest (line 10) | class ExportsApiTest extends TestCase method test_book_html_endpoint (line 14) | public function test_book_html_endpoint() method test_book_plain_text_endpoint (line 25) | public function test_book_plain_text_endpoint() method test_book_pdf_endpoint (line 36) | public function test_book_pdf_endpoint() method test_book_markdown_endpoint (line 46) | public function test_book_markdown_endpoint() method test_book_zip_endpoint (line 59) | public function test_book_zip_endpoint() method test_chapter_html_endpoint (line 72) | public function test_chapter_html_endpoint() method test_chapter_plain_text_endpoint (line 83) | public function test_chapter_plain_text_endpoint() method test_chapter_pdf_endpoint (line 94) | public function test_chapter_pdf_endpoint() method test_chapter_markdown_endpoint (line 104) | public function test_chapter_markdown_endpoint() method test_chapter_zip_endpoint (line 116) | public function test_chapter_zip_endpoint() method test_page_html_endpoint (line 129) | public function test_page_html_endpoint() method test_page_plain_text_endpoint (line 140) | public function test_page_plain_text_endpoint() method test_page_pdf_endpoint (line 151) | public function test_page_pdf_endpoint() method test_page_markdown_endpoint (line 161) | public function test_page_markdown_endpoint() method test_page_zip_endpoint (line 172) | public function test_page_zip_endpoint() method test_cant_export_when_not_have_permission (line 185) | public function test_cant_export_when_not_have_permission() FILE: tests/Api/ImageGalleryApiTest.php class ImageGalleryApiTest (line 9) | class ImageGalleryApiTest extends TestCase method test_index_endpoint_returns_expected_image_and_count (line 15) | public function test_index_endpoint_returns_expected_image_and_count() method test_index_endpoint_doesnt_show_images_for_those_uploaded_to_non_visible_pages (line 39) | public function test_index_endpoint_doesnt_show_images_for_those_uploa... method test_index_endpoint_doesnt_show_other_image_types (line 57) | public function test_index_endpoint_doesnt_show_other_image_types() method test_create_endpoint (line 82) | public function test_create_endpoint() method test_create_endpoint_requires_image_create_permissions (line 115) | public function test_create_endpoint_requires_image_create_permissions() method test_create_fails_if_uploaded_to_not_visible_or_not_exists (line 134) | public function test_create_fails_if_uploaded_to_not_visible_or_not_ex... method test_create_has_restricted_types (line 157) | public function test_create_has_restricted_types() method test_create_will_use_file_name_if_no_name_provided_in_request (line 185) | public function test_create_will_use_file_name_if_no_name_provided_in_... method test_read_endpoint (line 205) | public function test_read_endpoint() method test_read_endpoint_provides_different_content_for_drawings (line 242) | public function test_read_endpoint_provides_different_content_for_draw... method test_read_endpoint_does_not_show_if_no_permissions_for_related_page (line 265) | public function test_read_endpoint_does_not_show_if_no_permissions_for... method test_read_data_endpoint (line 278) | public function test_read_data_endpoint() method test_read_data_endpoint_permission_controlled (line 293) | public function test_read_data_endpoint_permission_controlled() method test_read_url_data_endpoint (line 308) | public function test_read_url_data_endpoint() method test_read_url_data_endpoint_permission_controlled_when_local_secure_restricted_storage_is_used (line 323) | public function test_read_url_data_endpoint_permission_controlled_when... method test_update_endpoint (line 341) | public function test_update_endpoint() method test_update_existing_image_file (line 363) | public function test_update_existing_image_file() method test_update_endpoint_requires_image_update_permission (line 380) | public function test_update_endpoint_requires_image_update_permission() method test_delete_endpoint (line 398) | public function test_delete_endpoint() method test_delete_endpoint_requires_image_delete_permission (line 412) | public function test_delete_endpoint_requires_image_delete_permission() FILE: tests/Api/ImportsApiTest.php class ImportsApiTest (line 10) | class ImportsApiTest extends TestCase method test_create_and_run (line 16) | public function test_create_and_run(): void method test_create_validation_error (line 52) | public function test_create_validation_error(): void method test_list (line 73) | public function test_list(): void method test_list_visibility_limited (line 90) | public function test_list_visibility_limited(): void method test_read (line 109) | public function test_read(): void method test_delete (line 140) | public function test_delete(): void method test_content_import_permissions_needed (line 148) | public function test_content_import_permissions_needed(): void FILE: tests/Api/PagesApiTest.php class PagesApiTest (line 12) | class PagesApiTest extends TestCase method test_index_endpoint_returns_expected_page (line 18) | public function test_index_endpoint_returns_expected_page() method test_create_endpoint (line 39) | public function test_create_endpoint() method test_page_name_needed_to_create (line 72) | public function test_page_name_needed_to_create() method test_book_id_or_chapter_id_needed_to_create (line 88) | public function test_book_id_or_chapter_id_needed_to_create() method test_markdown_can_be_provided_for_create (line 112) | public function test_markdown_can_be_provided_for_create() method test_read_endpoint (line 131) | public function test_read_endpoint() method test_read_endpoint_provides_rendered_html (line 154) | public function test_read_endpoint_provides_rendered_html() method test_read_endpoint_provides_raw_html (line 168) | public function test_read_endpoint_provides_raw_html() method test_read_endpoint_returns_not_found (line 182) | public function test_read_endpoint_returns_not_found() method test_read_endpoint_includes_page_comments_tree_structure (line 203) | public function test_read_endpoint_includes_page_comments_tree_structu... method test_update_endpoint (line 228) | public function test_update_endpoint() method test_providing_new_chapter_id_on_update_will_move_page (line 255) | public function test_providing_new_chapter_id_on_update_will_move_page() method test_providing_move_via_update_requires_page_create_permission_on_new_parent (line 274) | public function test_providing_move_via_update_requires_page_create_pe... method test_update_endpoint_does_not_wipe_content_if_no_html_or_md_provided (line 290) | public function test_update_endpoint_does_not_wipe_content_if_no_html_... method test_update_increments_updated_date_if_only_tags_are_sent (line 311) | public function test_update_increments_updated_date_if_only_tags_are_s... method test_delete_endpoint (line 328) | public function test_delete_endpoint() FILE: tests/Api/RecycleBinApiTest.php class RecycleBinApiTest (line 10) | class RecycleBinApiTest extends TestCase method test_settings_manage_permission_needed_for_all_endpoints (line 22) | public function test_settings_manage_permission_needed_for_all_endpoin... method test_restrictions_manage_all_permission_needed_for_all_endpoints (line 35) | public function test_restrictions_manage_all_permission_needed_for_all... method test_index_endpoint_returns_expected_page (line 48) | public function test_index_endpoint_returns_expected_page() method test_index_endpoint_returns_children_count (line 84) | public function test_index_endpoint_returns_children_count() method test_index_endpoint_returns_parent (line 111) | public function test_index_endpoint_returns_parent() method test_restore_endpoint (line 141) | public function test_restore_endpoint() method test_destroy_endpoint (line 166) | public function test_destroy_endpoint() FILE: tests/Api/RolesApiTest.php class RolesApiTest (line 10) | class RolesApiTest extends TestCase method test_user_roles_manage_permission_needed_for_all_endpoints (line 24) | public function test_user_roles_manage_permission_needed_for_all_endpo... method test_index_endpoint_returns_expected_role_and_count (line 34) | public function test_index_endpoint_returns_expected_role_and_count() method test_create_endpoint (line 58) | public function test_create_endpoint() method test_create_name_and_description_validation (line 104) | public function test_create_name_and_description_validation() method test_read_endpoint (line 124) | public function test_read_endpoint() method test_update_endpoint (line 147) | public function test_update_endpoint() method test_update_endpoint_does_not_remove_info_if_not_provided (line 184) | public function test_update_endpoint_does_not_remove_info_if_not_provi... method test_delete_endpoint (line 203) | public function test_delete_endpoint() method test_delete_endpoint_fails_deleting_system_role (line 214) | public function test_delete_endpoint_fails_deleting_system_role() method test_delete_endpoint_fails_deleting_default_registration_role (line 225) | public function test_delete_endpoint_fails_deleting_default_registrati... FILE: tests/Api/SearchApiTest.php class SearchApiTest (line 12) | class SearchApiTest extends TestCase method test_all_endpoint_returns_search_filtered_results_with_query (line 18) | public function test_all_endpoint_returns_search_filtered_results_with... method test_all_endpoint_returns_entity_url (line 39) | public function test_all_endpoint_returns_entity_url() method test_all_endpoint_returns_items_with_preview_html (line 52) | public function test_all_endpoint_returns_items_with_preview_html() method test_all_endpoint_requires_query_parameter (line 69) | public function test_all_endpoint_requires_query_parameter() method test_all_endpoint_includes_parent_details_where_visible (line 78) | public function test_all_endpoint_includes_parent_details_where_visible() FILE: tests/Api/ShelvesApiTest.php class ShelvesApiTest (line 12) | class ShelvesApiTest extends TestCase method test_index_endpoint_returns_expected_shelf (line 18) | public function test_index_endpoint_returns_expected_shelf() method test_index_endpoint_includes_cover_if_set (line 37) | public function test_index_endpoint_includes_cover_if_set() method test_create_endpoint (line 58) | public function test_create_endpoint() method test_create_endpoint_with_html (line 86) | public function test_create_endpoint_with_html() method test_shelf_name_needed_to_create (line 108) | public function test_shelf_name_needed_to_create() method test_read_endpoint (line 128) | public function test_read_endpoint() method test_update_endpoint (line 151) | public function test_update_endpoint() method test_update_endpoint_with_html (line 172) | public function test_update_endpoint_with_html() method test_update_increments_updated_date_if_only_tags_are_sent (line 187) | public function test_update_increments_updated_date_if_only_tags_are_s... method test_update_only_assigns_books_if_param_provided (line 202) | public function test_update_only_assigns_books_if_param_provided() method test_update_cover_image_control (line 220) | public function test_update_cover_image_control() method test_delete_endpoint (line 256) | public function test_delete_endpoint() FILE: tests/Api/SystemApiTest.php class SystemApiTest (line 7) | class SystemApiTest extends TestCase method test_read_returns_app_info (line 11) | public function test_read_returns_app_info(): void FILE: tests/Api/TestsApi.php type TestsApi (line 7) | trait TestsApi method actingAsForApi (line 16) | protected function actingAsForApi(User $user): static method actingAsApiEditor (line 26) | protected function actingAsApiEditor(): static method actingAsApiAdmin (line 36) | protected function actingAsApiAdmin(): static method errorResponse (line 46) | protected function errorResponse(string $message, int $code): array method permissionErrorResponse (line 54) | protected function permissionErrorResponse(): array method validationResponse (line 63) | protected function validationResponse(array $messages): array method apiAuthHeader (line 74) | protected function apiAuthHeader(): array FILE: tests/Api/UsersApiTest.php class UsersApiTest (line 16) | class UsersApiTest extends TestCase method test_users_manage_permission_needed_for_all_endpoints (line 30) | public function test_users_manage_permission_needed_for_all_endpoints() method test_no_endpoints_accessible_in_demo_mode (line 40) | public function test_no_endpoints_accessible_in_demo_mode() method test_index_endpoint_returns_expected_user (line 52) | public function test_index_endpoint_returns_expected_user() method test_index_endpoint_has_correct_created_and_last_activity_dates (line 72) | public function test_index_endpoint_has_correct_created_and_last_activ... method test_create_endpoint (line 93) | public function test_create_endpoint() method test_create_with_send_invite (line 129) | public function test_create_with_send_invite() method test_create_with_send_invite_works_with_value_of_1 (line 146) | public function test_create_with_send_invite_works_with_value_of_1() method test_create_name_and_email_validation (line 163) | public function test_create_name_and_email_validation() method test_read_endpoint (line 189) | public function test_read_endpoint() method test_update_endpoint (line 214) | public function test_update_endpoint() method test_update_endpoint_does_not_remove_info_if_not_provided (line 243) | public function test_update_endpoint_does_not_remove_info_if_not_provi... method test_delete_endpoint (line 261) | public function test_delete_endpoint() method test_delete_endpoint_with_ownership_migration_user (line 275) | public function test_delete_endpoint_with_ownership_migration_user() method test_delete_endpoint_fails_deleting_only_admin (line 302) | public function test_delete_endpoint_fails_deleting_only_admin() method test_delete_endpoint_fails_deleting_public_user (line 315) | public function test_delete_endpoint_fails_deleting_public_user() FILE: tests/Auth/AuthTest.php class AuthTest (line 10) | class AuthTest extends TestCase method test_auth_working (line 12) | public function test_auth_working() method test_login (line 17) | public function test_login() method test_public_viewing (line 22) | public function test_public_viewing() method test_sign_up_link_on_login (line 30) | public function test_sign_up_link_on_login() method test_logout (line 39) | public function test_logout() method test_mfa_session_cleared_on_logout (line 46) | public function test_mfa_session_cleared_on_logout() method test_login_redirects_to_initially_requested_url_correctly (line 58) | public function test_login_redirects_to_initially_requested_url_correc... method test_login_intended_redirect_does_not_redirect_to_external_pages (line 68) | public function test_login_intended_redirect_does_not_redirect_to_exte... method test_login_intended_redirect_does_not_factor_mfa_routes (line 79) | public function test_login_intended_redirect_does_not_factor_mfa_routes() method test_login_authenticates_admins_on_all_guards (line 87) | public function test_login_authenticates_admins_on_all_guards() method test_login_authenticates_nonadmins_on_default_guard_only (line 96) | public function test_login_authenticates_nonadmins_on_default_guard_on... method test_failed_logins_are_logged_when_message_configured (line 109) | public function test_failed_logins_are_logged_when_message_configured() method test_logged_in_user_with_unconfirmed_email_is_logged_out (line 121) | public function test_logged_in_user_with_unconfirmed_email_is_logged_o... method test_login_attempts_are_rate_limited (line 135) | public function test_login_attempts_are_rate_limited() method test_login_specifically_disabled_for_guest_account (line 148) | public function test_login_specifically_disabled_for_guest_account() method login (line 170) | protected function login(string $email, string $password): TestResponse FILE: tests/Auth/GroupSyncServiceTest.php class GroupSyncServiceTest (line 10) | class GroupSyncServiceTest extends TestCase method test_user_is_assigned_to_matching_roles (line 12) | public function test_user_is_assigned_to_matching_roles() method test_multiple_values_in_role_external_auth_id_handled (line 34) | public function test_multiple_values_in_role_external_auth_id_handled() method test_commas_can_be_used_in_external_auth_id_if_escaped (line 46) | public function test_commas_can_be_used_in_external_auth_id_if_escaped() method test_external_auth_id_matches_ignoring_case (line 58) | public function test_external_auth_id_matches_ignoring_case() FILE: tests/Auth/LdapTest.php class LdapTest (line 14) | class LdapTest extends TestCase method setUp (line 21) | protected function setUp(): void method runFailedAuthLogin (line 46) | protected function runFailedAuthLogin() method mockEscapes (line 54) | protected function mockEscapes($times = 1) method mockExplodes (line 61) | protected function mockExplodes($times = 1) method mockUserLogin (line 68) | protected function mockUserLogin(?string $email = null): TestResponse method commonLdapMocks (line 79) | protected function commonLdapMocks(int $connects = 1, int $versions = ... method mockGroupLookups (line 90) | protected function mockGroupLookups(int $times = 1): void method test_login (line 96) | public function test_login() method test_email_domain_restriction_active_on_new_ldap_login (line 123) | public function test_email_domain_restriction_active_on_new_ldap_login() method test_login_works_when_no_uid_provided_by_ldap_server (line 150) | public function test_login_works_when_no_uid_provided_by_ldap_server() method test_login_works_when_ldap_server_does_not_provide_a_cn_value (line 169) | public function test_login_works_when_ldap_server_does_not_provide_a_c... method test_a_custom_uid_attribute_can_be_specified_and_is_used_properly (line 189) | public function test_a_custom_uid_attribute_can_be_specified_and_is_us... method test_user_filter_default_placeholder_format (line 210) | public function test_user_filter_default_placeholder_format() method test_user_filter_old_placeholder_format (line 226) | public function test_user_filter_old_placeholder_format() method test_initial_incorrect_credentials (line 242) | public function test_initial_incorrect_credentials() method test_login_not_found_username (line 260) | public function test_login_not_found_username() method test_create_user_form (line 273) | public function test_create_user_form() method test_user_edit_form (line 293) | public function test_user_edit_form() method test_registration_disabled (line 309) | public function test_registration_disabled() method test_non_admins_cannot_change_auth_id (line 315) | public function test_non_admins_cannot_change_auth_id() method test_login_maps_roles_and_retains_existing_roles (line 323) | public function test_login_maps_roles_and_retains_existing_roles() method test_login_maps_roles_and_removes_old_roles_if_set (line 369) | public function test_login_maps_roles_and_removes_old_roles_if_set() method test_dump_user_groups_shows_group_related_details_as_json (line 409) | public function test_dump_user_groups_shows_group_related_details_as_j... method test_recursive_group_search_queries_via_full_dn (line 473) | public function test_recursive_group_search_queries_via_full_dn() method test_external_auth_id_visible_in_roles_page_when_ldap_active (line 514) | public function test_external_auth_id_visible_in_roles_page_when_ldap_... method test_login_maps_roles_using_external_auth_ids_if_set (line 521) | public function test_login_maps_roles_using_external_auth_ids_if_set() method test_login_group_mapping_does_not_conflict_with_default_role (line 559) | public function test_login_group_mapping_does_not_conflict_with_defaul... method test_login_uses_specified_display_name_attribute (line 601) | public function test_login_uses_specified_display_name_attribute() method test_login_uses_multiple_display_properties_if_defined (line 626) | public function test_login_uses_multiple_display_properties_if_defined() method test_login_uses_default_display_name_attribute_if_specified_not_present (line 653) | public function test_login_uses_default_display_name_attribute_if_spec... method checkLdapReceivesCorrectDetails (line 682) | protected function checkLdapReceivesCorrectDetails($serverString, $exp... method test_ldap_receives_correct_connect_host_from_config (line 694) | public function test_ldap_receives_correct_connect_host_from_config() method test_forgot_password_routes_inaccessible (line 711) | public function test_forgot_password_routes_inaccessible() method test_user_invite_routes_inaccessible (line 726) | public function test_user_invite_routes_inaccessible() method test_user_register_routes_inaccessible (line 735) | public function test_user_register_routes_inaccessible() method test_dump_user_details_option_works (line 744) | public function test_dump_user_details_option_works() method test_start_tls_called_if_option_set (line 769) | public function test_start_tls_called_if_option_set() method test_connection_fails_if_tls_fails (line 776) | public function test_connection_fails_if_tls_fails() method test_ldap_attributes_can_be_binary_decoded_if_marked (line 785) | public function test_ldap_attributes_can_be_binary_decoded_if_marked() method test_new_ldap_user_login_with_already_used_email_address_shows_error_message_to_user (line 802) | public function test_new_ldap_user_login_with_already_used_email_addre... method test_login_with_email_confirmation_required_maps_groups_but_shows_confirmation_screen (line 828) | public function test_login_with_email_confirmation_required_maps_group... method test_failed_logins_are_logged_when_message_configured (line 876) | public function test_failed_logins_are_logged_when_message_configured() method test_thumbnail_attribute_used_as_user_avatar_if_configured (line 884) | public function test_thumbnail_attribute_used_as_user_avatar_if_config... method test_tls_ca_cert_option_throws_if_set_to_invalid_location (line 908) | public function test_tls_ca_cert_option_throws_if_set_to_invalid_locat... method test_tls_ca_cert_option_used_if_set_to_a_folder (line 920) | public function test_tls_ca_cert_option_used_if_set_to_a_folder() method test_tls_ca_cert_option_used_if_set_to_a_file (line 929) | public function test_tls_ca_cert_option_used_if_set_to_a_file() FILE: tests/Auth/LoginAutoInitiateTest.php class LoginAutoInitiateTest (line 7) | class LoginAutoInitiateTest extends TestCase method setUp (line 9) | protected function setUp(): void method test_with_oidc (line 20) | public function test_with_oidc() method test_with_saml2 (line 32) | public function test_with_saml2() method test_it_does_not_run_if_social_provider_is_active (line 44) | public function test_it_does_not_run_if_social_provider_is_active() method test_it_does_not_run_if_prevent_query_string_exists (line 57) | public function test_it_does_not_run_if_prevent_query_string_exists() method test_logout_with_auto_init_leads_to_login_page_with_prevention_query (line 68) | public function test_logout_with_auto_init_leads_to_login_page_with_pr... FILE: tests/Auth/MfaConfigurationTest.php class MfaConfigurationTest (line 13) | class MfaConfigurationTest extends TestCase method test_totp_setup (line 15) | public function test_totp_setup() method test_backup_codes_setup (line 68) | public function test_backup_codes_setup() method test_backup_codes_cannot_be_confirmed_if_not_previously_generated (line 108) | public function test_backup_codes_cannot_be_confirmed_if_not_previousl... method test_mfa_method_count_is_visible_on_user_edit_page (line 114) | public function test_mfa_method_count_is_visible_on_user_edit_page() method test_mfa_setup_link_only_shown_when_viewing_own_user_edit_page (line 129) | public function test_mfa_setup_link_only_shown_when_viewing_own_user_e... method test_mfa_indicator_shows_in_user_list (line 139) | public function test_mfa_indicator_shows_in_user_list() method test_remove_mfa_method (line 152) | public function test_remove_mfa_method() method test_mfa_required_if_set_on_role (line 170) | public function test_mfa_required_if_set_on_role() method test_mfa_required_if_mfa_option_configured (line 185) | public function test_mfa_required_if_mfa_option_configured() method test_totp_setup_url_shows_correct_user_when_setup_forced_upon_login (line 200) | public function test_totp_setup_url_shows_correct_user_when_setup_forc... FILE: tests/Auth/MfaVerificationTest.php class MfaVerificationTest (line 16) | class MfaVerificationTest extends TestCase method test_totp_verification (line 18) | public function test_totp_verification() method test_totp_verification_fails_on_missing_invalid_code (line 36) | public function test_totp_verification_fails_on_missing_invalid_code() method test_totp_form_has_autofill_configured (line 60) | public function test_totp_form_has_autofill_configured() method test_backup_code_verification (line 69) | public function test_backup_code_verification() method test_backup_code_verification_fails_on_missing_or_invalid_code (line 92) | public function test_backup_code_verification_fails_on_missing_or_inva... method test_backup_code_verification_fails_on_attempted_code_reuse (line 116) | public function test_backup_code_verification_fails_on_attempted_code_... method test_backup_code_verification_shows_warning_when_limited_codes_remain (line 139) | public function test_backup_code_verification_shows_warning_when_limit... method test_backup_code_form_has_autofill_configured (line 150) | public function test_backup_code_form_has_autofill_configured() method test_both_mfa_options_available_if_set_on_profile (line 159) | public function test_both_mfa_options_available_if_set_on_profile() method test_mfa_required_with_no_methods_leads_to_setup (line 184) | public function test_mfa_required_with_no_methods_leads_to_setup() method test_mfa_setup_route_access (line 224) | public function test_mfa_setup_route_access() method test_login_mfa_interception_does_not_log_error (line 262) | public function test_login_mfa_interception_does_not_log_error() method startTotpLogin (line 275) | protected function startTotpLogin(): array method startBackupCodeLogin (line 293) | protected function startBackupCodeLogin($codes = ['kzzu6-1pgll', 'bzxn... FILE: tests/Auth/OidcTest.php class OidcTest (line 16) | class OidcTest extends TestCase method setUp (line 21) | protected function setUp(): void method tearDown (line 54) | protected function tearDown(): void method test_login_option_shows_on_login_page (line 62) | public function test_login_option_shows_on_login_page() method test_oidc_routes_are_only_active_if_oidc_enabled (line 69) | public function test_oidc_routes_are_only_active_if_oidc_enabled() method test_forgot_password_routes_inaccessible (line 79) | public function test_forgot_password_routes_inaccessible() method test_standard_login_routes_inaccessible (line 94) | public function test_standard_login_routes_inaccessible() method test_logout_route_functions (line 100) | public function test_logout_route_functions() method test_user_invite_routes_inaccessible (line 107) | public function test_user_invite_routes_inaccessible() method test_user_register_routes_inaccessible (line 116) | public function test_user_register_routes_inaccessible() method test_login (line 125) | public function test_login() method test_login_success_flow (line 137) | public function test_login_success_flow() method test_login_uses_custom_additional_scopes_if_defined (line 172) | public function test_login_uses_custom_additional_scopes_if_defined() method test_callback_fails_if_no_state_present_or_matching (line 183) | public function test_callback_fails_if_no_state_present_or_matching() method test_callback_works_even_if_other_request_made_by_session (line 193) | public function test_callback_works_even_if_other_request_made_by_sess... method test_callback_fails_if_state_timestamp_is_too_old (line 209) | public function test_callback_fails_if_state_timestamp_is_too_old() method test_dump_user_details_option_outputs_as_expected (line 222) | public function test_dump_user_details_option_outputs_as_expected() method test_auth_fails_if_no_email_exists_in_user_data (line 241) | public function test_auth_fails_if_no_email_exists_in_user_data() method test_auth_fails_if_already_logged_in (line 253) | public function test_auth_fails_if_already_logged_in() method test_auth_login_as_existing_user (line 265) | public function test_auth_login_as_existing_user() method test_auth_login_as_existing_user_email_with_different_auth_id_fails (line 282) | public function test_auth_login_as_existing_user_email_with_different_... method test_auth_login_with_invalid_token_fails (line 300) | public function test_auth_login_with_invalid_token_fails() method test_auth_fails_if_endpoints_start_with_https (line 311) | public function test_auth_fails_if_endpoints_start_with_https() method test_auth_login_with_autodiscovery (line 339) | public function test_auth_login_with_autodiscovery() method test_auth_fails_if_autodiscovery_fails (line 362) | public function test_auth_fails_if_autodiscovery_fails() method test_autodiscovery_calls_are_cached (line 374) | public function test_autodiscovery_calls_are_cached() method test_auth_login_with_autodiscovery_with_keys_that_do_not_have_alg_property (line 400) | public function test_auth_login_with_autodiscovery_with_keys_that_do_n... method test_auth_login_with_autodiscovery_with_keys_that_do_not_have_use_property (line 425) | public function test_auth_login_with_autodiscovery_with_keys_that_do_n... method test_auth_uses_configured_external_id_claim_option (line 456) | public function test_auth_uses_configured_external_id_claim_option() method test_auth_uses_mulitple_display_name_claims_if_configured (line 474) | public function test_auth_uses_mulitple_display_name_claims_if_configu... method test_user_avatar_fetched_from_picture_on_first_login_if_enabled (line 491) | public function test_user_avatar_fetched_from_picture_on_first_login_i... method test_user_avatar_fetched_for_existing_user_when_no_avatar_already_assigned (line 508) | public function test_user_avatar_fetched_for_existing_user_when_no_ava... method test_user_avatar_not_fetched_if_image_data_format_unknown (line 528) | public function test_user_avatar_not_fetched_if_image_data_format_unkn... method test_user_avatar_not_fetched_when_avatar_already_assigned (line 545) | public function test_user_avatar_not_fetched_when_avatar_already_assig... method test_user_avatar_fetch_follows_up_to_three_redirects (line 568) | public function test_user_avatar_fetch_follows_up_to_three_redirects() method test_login_group_sync (line 590) | public function test_login_group_sync() method test_login_group_sync_with_nested_groups_in_token (line 616) | public function test_login_group_sync_with_nested_groups_in_token() method test_oidc_logout_form_active_when_oidc_active (line 643) | public function test_oidc_logout_form_active_when_oidc_active() method test_logout_with_autodiscovery_with_oidc_logout_enabled (line 650) | public function test_logout_with_autodiscovery_with_oidc_logout_enabled() method test_logout_with_autodiscovery_with_oidc_logout_disabled (line 667) | public function test_logout_with_autodiscovery_with_oidc_logout_disabl... method test_logout_without_autodiscovery_but_with_endpoint_configured (line 682) | public function test_logout_without_autodiscovery_but_with_endpoint_co... method test_logout_without_autodiscovery_with_configured_endpoint_adds_to_query_if_existing (line 691) | public function test_logout_without_autodiscovery_with_configured_endp... method test_logout_with_autodiscovery_and_auto_initiate_returns_to_auto_prevented_login (line 700) | public function test_logout_with_autodiscovery_and_auto_initiate_retur... method test_logout_endpoint_url_overrides_autodiscovery_endpoint (line 722) | public function test_logout_endpoint_url_overrides_autodiscovery_endpo... method test_logout_with_autodiscovery_does_not_use_rp_logout_if_no_url_via_autodiscovery (line 739) | public function test_logout_with_autodiscovery_does_not_use_rp_logout_... method test_logout_redirect_contains_id_token_hint_if_existing (line 754) | public function test_logout_redirect_contains_id_token_hint_if_existing() method test_oidc_id_token_pre_validate_theme_event_without_return (line 771) | public function test_oidc_id_token_pre_validate_theme_event_without_re... method test_oidc_id_token_pre_validate_theme_event_with_return (line 800) | public function test_oidc_id_token_pre_validate_theme_event_with_return() method test_oidc_auth_pre_redirect_theme_event_with_return (line 825) | public function test_oidc_auth_pre_redirect_theme_event_with_return() method test_oidc_auth_pre_redirect_theme_event_with_no_return (line 841) | public function test_oidc_auth_pre_redirect_theme_event_with_no_return() method test_pkce_used_on_authorize_and_access (line 853) | public function test_pkce_used_on_authorize_and_access() method test_userinfo_endpoint_used_if_missing_claims_in_id_token (line 881) | public function test_userinfo_endpoint_used_if_missing_claims_in_id_to... method test_userinfo_endpoint_fetch_with_different_sub_throws_error (line 909) | public function test_userinfo_endpoint_fetch_with_different_sub_throws... method test_userinfo_endpoint_fetch_returning_no_sub_throws_error (line 918) | public function test_userinfo_endpoint_fetch_returning_no_sub_throws_e... method test_userinfo_endpoint_fetch_can_parsed_nested_groups (line 927) | public function test_userinfo_endpoint_fetch_can_parsed_nested_groups() method test_userinfo_endpoint_response_with_complex_json_content_type_handled (line 948) | public function test_userinfo_endpoint_response_with_complex_json_cont... method test_userinfo_endpoint_jwks_response_handled (line 962) | public function test_userinfo_endpoint_jwks_response_handled() method test_userinfo_endpoint_jwks_response_returning_no_sub_throws (line 974) | public function test_userinfo_endpoint_jwks_response_returning_no_sub_... method test_userinfo_endpoint_jwks_response_returning_non_matching_sub_throws (line 984) | public function test_userinfo_endpoint_jwks_response_returning_non_mat... method test_userinfo_endpoint_jwks_response_with_invalid_signature_throws (line 994) | public function test_userinfo_endpoint_jwks_response_with_invalid_sign... method test_userinfo_endpoint_jwks_response_with_invalid_signature_alg_throws (line 1006) | public function test_userinfo_endpoint_jwks_response_with_invalid_sign... method test_userinfo_endpoint_response_with_invalid_content_type_throws (line 1016) | public function test_userinfo_endpoint_response_with_invalid_content_t... method test_userinfo_endpoint_not_called_if_empty_groups_array_provided_in_id_token (line 1024) | public function test_userinfo_endpoint_not_called_if_empty_groups_arra... method withAutodiscovery (line 1044) | protected function withAutodiscovery(): void method runLogin (line 1056) | protected function runLogin($claimOverrides = [], $additionalHttpRespo... method getAutoDiscoveryResponse (line 1065) | protected function getAutoDiscoveryResponse($responseOverrides = []): ... method getJwksResponse (line 1081) | protected function getJwksResponse(): Response method getMockAuthorizationResponse (line 1094) | protected function getMockAuthorizationResponse($claimOverrides = []):... FILE: tests/Auth/RegistrationTest.php class RegistrationTest (line 12) | class RegistrationTest extends TestCase method test_confirmed_registration (line 14) | public function test_confirmed_registration() method test_restricted_registration (line 69) | public function test_restricted_registration() method test_restricted_registration_with_confirmation_disabled (line 95) | public function test_restricted_registration_with_confirmation_disabled() method test_registration_role_unset_by_default (line 121) | public function test_registration_role_unset_by_default() method test_registration_showing (line 129) | public function test_registration_showing() method test_normal_registration (line 137) | public function test_normal_registration() method test_empty_registration_redirects_back_with_errors (line 165) | public function test_empty_registration_redirects_back_with_errors() method test_registration_validation (line 176) | public function test_registration_validation() method test_registration_simple_honeypot_active (line 191) | public function test_registration_simple_honeypot_active() method test_registration_endpoint_throttled (line 210) | public function test_registration_endpoint_throttled() method test_registration_confirmation_throttled (line 226) | public function test_registration_confirmation_throttled() method test_registration_confirmation_resend (line 239) | public function test_registration_confirmation_resend() method test_registration_confirmation_expired_resend (line 257) | public function test_registration_confirmation_expired_resend() method test_registration_confirmation_awaiting_and_resend_returns_to_log_if_no_login_attempt_user_found (line 282) | public function test_registration_confirmation_awaiting_and_resend_ret... FILE: tests/Auth/ResetPasswordTest.php class ResetPasswordTest (line 12) | class ResetPasswordTest extends TestCase method setUp (line 14) | protected function setUp(): void method test_reset_flow (line 20) | public function test_reset_flow() method test_reset_flow_shows_success_message_even_if_wrong_password_to_prevent_user_discovery (line 63) | public function test_reset_flow_shows_success_message_even_if_wrong_pa... method test_reset_request_with_not_found_user_still_has_delay (line 86) | public function test_reset_request_with_not_found_user_still_has_delay() method test_reset_page_shows_sign_links (line 97) | public function test_reset_page_shows_sign_links() method test_reset_request_is_throttled (line 105) | public function test_reset_request_is_throttled() method test_reset_request_with_not_found_user_is_throttled (line 121) | public function test_reset_request_with_not_found_user_is_throttled() method test_reset_call_is_throttled (line 132) | public function test_reset_call_is_throttled() FILE: tests/Auth/Saml2Test.php class Saml2Test (line 9) | class Saml2Test extends TestCase method setUp (line 11) | protected function setUp(): void method test_metadata_endpoint_displays_xml_as_expected (line 36) | public function test_metadata_endpoint_displays_xml_as_expected() method test_metadata_endpoint_loads_when_autoloading_with_bad_url_set (line 44) | public function test_metadata_endpoint_loads_when_autoloading_with_bad... method test_onelogin_overrides_functions_as_expected (line 58) | public function test_onelogin_overrides_functions_as_expected() method test_login_option_shows_on_login_page (line 69) | public function test_login_option_shows_on_login_page() method test_login (line 76) | public function test_login() method test_acs_process_id_randomly_generated (line 106) | public function test_acs_process_id_randomly_generated() method test_process_acs_endpoint_cant_be_called_with_invalid_id (line 117) | public function test_process_acs_endpoint_cant_be_called_with_invalid_... method test_group_role_sync_on_login (line 128) | public function test_group_role_sync_on_login() method test_group_role_sync_removal_option_works_as_expected (line 147) | public function test_group_role_sync_removal_option_works_as_expected() method test_logout_link_directs_to_saml_path (line 167) | public function test_logout_link_directs_to_saml_path() method test_logout_sls_flow (line 177) | public function test_logout_sls_flow() method test_logout_sls_flow_when_sls_not_configured (line 202) | public function test_logout_sls_flow_when_sls_not_configured() method test_logout_sls_flow_logs_user_out_before_redirect (line 217) | public function test_logout_sls_flow_logs_user_out_before_redirect() method test_logout_sls_request_redirect_prevents_auto_login_when_enabled (line 232) | public function test_logout_sls_request_redirect_prevents_auto_login_w... method test_logout_sls_response_endpoint_redirect_prevents_auto_login_when_enabled (line 248) | public function test_logout_sls_response_endpoint_redirect_prevents_au... method test_dump_user_details_option_works (line 266) | public function test_dump_user_details_option_works() method test_dump_user_details_response_contains_parsed_group_data_if_groups_enabled (line 281) | public function test_dump_user_details_response_contains_parsed_group_... method test_saml_routes_are_only_active_if_saml_enabled (line 297) | public function test_saml_routes_are_only_active_if_saml_enabled() method test_forgot_password_routes_inaccessible (line 313) | public function test_forgot_password_routes_inaccessible() method test_standard_login_routes_inaccessible (line 328) | public function test_standard_login_routes_inaccessible() method test_user_invite_routes_inaccessible (line 337) | public function test_user_invite_routes_inaccessible() method test_user_register_routes_inaccessible (line 346) | public function test_user_register_routes_inaccessible() method test_email_domain_restriction_active_on_new_saml_login (line 355) | public function test_email_domain_restriction_active_on_new_saml_login() method test_group_sync_functions_when_email_confirmation_required (line 370) | public function test_group_sync_functions_when_email_confirmation_requ... method test_login_where_existing_non_saml_user_shows_warning (line 399) | public function test_login_where_existing_non_saml_user_shows_warning() method test_login_request_contains_expected_default_authncontext (line 422) | public function test_login_request_contains_expected_default_authncont... method test_false_idp_authncontext_option_does_not_pass_authncontext_in_saml_request (line 429) | public function test_false_idp_authncontext_option_does_not_pass_authn... method test_array_idp_authncontext_option_passes_value_as_authncontextclassref_in_request (line 437) | public function test_array_idp_authncontext_option_passes_value_as_aut... method getAuthnRequest (line 446) | protected function getAuthnRequest(): string method parseSamlDataFromUrl (line 453) | protected function parseSamlDataFromUrl(string $url, string $paramName... method withGet (line 462) | protected function withGet(array $options, callable $callback) method withGlobal (line 467) | protected function withGlobal(array &$global, array $options, callable... FILE: tests/Auth/SocialAuthTest.php class SocialAuthTest (line 14) | class SocialAuthTest extends TestCase method test_social_registration (line 16) | public function test_social_registration() method test_social_login (line 43) | public function test_social_login() method test_social_account_attach (line 88) | public function test_social_account_attach() method test_social_account_detach (line 118) | public function test_social_account_detach() method test_social_autoregister (line 142) | public function test_social_autoregister() method test_social_auto_email_confirm (line 179) | public function test_social_auto_email_confirm() method test_google_select_account_option_changes_redirect_url (line 208) | public function test_google_select_account_option_changes_redirect_url() method test_social_registration_with_no_name_uses_email_as_name (line 216) | public function test_social_registration_with_no_name_uses_email_as_na... FILE: tests/Auth/UserInviteTest.php class UserInviteTest (line 15) | class UserInviteTest extends TestCase method test_user_creation_creates_invite (line 17) | public function test_user_creation_creates_invite() method test_user_invite_sent_in_selected_language (line 38) | public function test_user_invite_sent_in_selected_language() method test_invite_set_password (line 62) | public function test_invite_set_password() method test_invite_set_has_password_validation (line 91) | public function test_invite_set_has_password_validation() method test_non_existent_invite_token_redirects_to_home (line 117) | public function test_non_existent_invite_token_redirects_to_home() method test_token_expires_after_two_weeks (line 126) | public function test_token_expires_after_two_weeks() method test_set_password_view_is_throttled (line 141) | public function test_set_password_view_is_throttled() method test_set_password_post_is_throttled (line 150) | public function test_set_password_post_is_throttled() FILE: tests/Commands/AssignSortRuleCommandTest.php class AssignSortRuleCommandTest (line 9) | class AssignSortRuleCommandTest extends TestCase method test_no_given_sort_rule_lists_options (line 11) | public function test_no_given_sort_rule_lists_options() method test_run_without_options_advises_help (line 24) | public function test_run_without_options_advises_help() method test_run_without_valid_sort_advises_help (line 31) | public function test_run_without_valid_sort_advises_help() method test_confirmation_required (line 38) | public function test_confirmation_required() method test_assign_to_all_books (line 50) | public function test_assign_to_all_books() method test_assign_to_all_books_without_sort (line 66) | public function test_assign_to_all_books_without_sort() method test_assign_to_all_books_with_sort (line 88) | public function test_assign_to_all_books_with_sort() method test_assign_to_all_books_with_sort_id_is_validated (line 106) | public function test_assign_to_all_books_with_sort_id_is_validated() FILE: tests/Commands/CleanupImagesCommandTest.php class CleanupImagesCommandTest (line 8) | class CleanupImagesCommandTest extends TestCase method test_command_defaults_to_dry_run (line 10) | public function test_command_defaults_to_dry_run() method test_command_force_run (line 24) | public function test_command_force_run() method test_command_force_run_negative_confirmation (line 38) | public function test_command_force_run_negative_confirmation() method test_command_force_no_interaction_run (line 50) | public function test_command_force_no_interaction_run() FILE: tests/Commands/ClearActivityCommandTest.php class ClearActivityCommandTest (line 11) | class ClearActivityCommandTest extends TestCase method test_clear_activity_command (line 13) | public function test_clear_activity_command() FILE: tests/Commands/ClearRevisionsCommandTest.php class ClearRevisionsCommandTest (line 10) | class ClearRevisionsCommandTest extends TestCase method test_clear_revisions_command (line 12) | public function test_clear_revisions_command() FILE: tests/Commands/ClearViewsCommandTest.php class ClearViewsCommandTest (line 9) | class ClearViewsCommandTest extends TestCase method test_clear_views_command (line 11) | public function test_clear_views_command() FILE: tests/Commands/CopyShelfPermissionsCommandTest.php class CopyShelfPermissionsCommandTest (line 8) | class CopyShelfPermissionsCommandTest extends TestCase method test_copy_shelf_permissions_command_shows_error_when_no_required_option_given (line 10) | public function test_copy_shelf_permissions_command_shows_error_when_n... method test_copy_shelf_permissions_command_using_slug (line 17) | public function test_copy_shelf_permissions_command_using_slug() method test_copy_shelf_permissions_command_using_all (line 41) | public function test_copy_shelf_permissions_command_using_all() FILE: tests/Commands/CreateAdminCommandTest.php class CreateAdminCommandTest (line 12) | class CreateAdminCommandTest extends TestCase method test_standard_command_usage (line 14) | public function test_standard_command_usage() method test_providing_external_auth_id (line 33) | public function test_providing_external_auth_id() method test_password_required_if_external_auth_id_not_given (line 52) | public function test_password_required_if_external_auth_id_not_given() method test_generate_password_option (line 67) | public function test_generate_password_option() method test_initial_option_updates_default_admin (line 83) | public function test_initial_option_updates_default_admin() method test_initial_option_does_not_update_if_only_non_default_admin_exists (line 100) | public function test_initial_option_does_not_update_if_only_non_defaul... method test_initial_option_updates_creates_new_admin_if_none_exists (line 119) | public function test_initial_option_updates_creates_new_admin_if_none_... method test_initial_rerun_does_not_error_but_skips (line 140) | public function test_initial_rerun_does_not_error_but_skips() method test_initial_option_creation_errors_if_email_already_exists (line 162) | public function test_initial_option_creation_errors_if_email_already_e... method test_initial_option_updating_errors_if_email_already_exists (line 178) | public function test_initial_option_updating_errors_if_email_already_e... method test_initial_option_does_not_require_name_or_email_to_be_passed (line 194) | public function test_initial_option_does_not_require_name_or_email_to_... method test_initial_option_updating_existing_user_with_generate_password_only_outputs_password (line 212) | public function test_initial_option_updating_existing_user_with_genera... FILE: tests/Commands/DeleteUsersCommandTest.php class DeleteUsersCommandTest (line 9) | class DeleteUsersCommandTest extends TestCase method test_command_deletes_users (line 11) | public function test_command_deletes_users() method test_command_requires_confirmation (line 25) | public function test_command_requires_confirmation() method getNormalUsers (line 36) | protected function getNormalUsers(): Collection FILE: tests/Commands/InstallModuleCommandTest.php class InstallModuleCommandTest (line 10) | class InstallModuleCommandTest extends TestCase method test_local_module_install_with_active_theme (line 12) | public function test_local_module_install_with_active_theme() method test_remote_module_install_with_active_theme (line 29) | public function test_remote_module_install_with_active_theme() method test_remote_http_module_warns_and_prompts_users (line 55) | public function test_remote_http_module_warns_and_prompts_users() method test_remote_module_install_follows_redirects (line 79) | public function test_remote_module_install_follows_redirects() method test_remote_module_install_does_not_follow_redirects_to_different_origin (line 99) | public function test_remote_module_install_does_not_follow_redirects_t... method test_remote_module_install_download_failures_are_announced_to_user (line 118) | public function test_remote_module_install_download_failures_are_annou... method test_run_with_invalid_path_exits_early (line 134) | public function test_run_with_invalid_path_exits_early() method test_run_with_invalid_zip_has_early_exit (line 141) | public function test_run_with_invalid_zip_has_early_exit() method test_run_with_large_zip_has_early_exit (line 152) | public function test_run_with_large_zip_has_early_exit() method test_run_with_invalid_module_data_has_early_exit (line 164) | public function test_run_with_invalid_module_data_has_early_exit() method test_local_module_install_without_active_theme_can_setup_theme_folder (line 178) | public function test_local_module_install_without_active_theme_can_set... method test_local_module_install_with_active_theme_and_conflicting_modules_file_causes_early_exit (line 197) | public function test_local_module_install_with_active_theme_and_confli... method test_single_existing_module_with_same_name_replace (line 210) | public function test_single_existing_module_with_same_name_replace() method test_single_existing_module_with_same_name_cancel (line 230) | public function test_single_existing_module_with_same_name_cancel() method test_single_existing_module_with_same_name_add (line 249) | public function test_single_existing_module_with_same_name_add() method createModuleFolderInCurrentTheme (line 267) | protected function createModuleFolderInCurrentTheme(array|null $metada... method getModuleZipPath (line 280) | protected function getModuleZipPath(array|null $metadata = null, array... FILE: tests/Commands/RefreshAvatarCommandTest.php class RefreshAvatarCommandTest (line 11) | class RefreshAvatarCommandTest extends TestCase method setUp (line 13) | public function setUp(): void method test_command_errors_if_avatar_fetch_disabled (line 23) | public function test_command_errors_if_avatar_fetch_disabled() method test_command_requires_email_or_id_option (line 32) | public function test_command_requires_email_or_id_option() method test_command_runs_with_provided_email (line 39) | public function test_command_runs_with_provided_email() method test_command_runs_with_provided_id (line 58) | public function test_command_runs_with_provided_id() method test_command_runs_with_provided_id_error_upstream (line 76) | public function test_command_runs_with_provided_id_error_upstream() method test_saying_no_to_confirmation_does_not_refresh_avatar (line 92) | public function test_saying_no_to_confirmation_does_not_refresh_avatar() method test_giving_non_existing_user_shows_error_message (line 103) | public function test_giving_non_existing_user_shows_error_message() method test_command_runs_all_users_without_avatars_dry_run (line 110) | public function test_command_runs_all_users_without_avatars_dry_run() method test_command_runs_all_users_without_avatars_with_none_to_update (line 121) | public function test_command_runs_all_users_without_avatars_with_none_... method test_command_runs_all_users_without_avatars (line 134) | public function test_command_runs_all_users_without_avatars() method test_saying_no_to_confirmation_all_users_without_avatars (line 158) | public function test_saying_no_to_confirmation_all_users_without_avata... method test_command_runs_all_users_dry_run (line 169) | public function test_command_runs_all_users_dry_run() method test_command_runs_update_all_users_avatar (line 180) | public function test_command_runs_update_all_users_avatar() method test_command_runs_update_all_users_avatar_errors (line 204) | public function test_command_runs_update_all_users_avatar_errors() method test_saying_no_to_confirmation_update_all_users_avatar (line 236) | public function test_saying_no_to_confirmation_update_all_users_avatar() FILE: tests/Commands/RegeneratePermissionsCommandTest.php class RegeneratePermissionsCommandTest (line 11) | class RegeneratePermissionsCommandTest extends TestCase method test_regen_permissions_command (line 13) | public function test_regen_permissions_command() FILE: tests/Commands/RegenerateReferencesCommandTest.php class RegenerateReferencesCommandTest (line 8) | class RegenerateReferencesCommandTest extends TestCase method test_regenerate_references_command (line 10) | public function test_regenerate_references_command() FILE: tests/Commands/RegenerateSearchCommandTest.php class RegenerateSearchCommandTest (line 9) | class RegenerateSearchCommandTest extends TestCase method test_command_regenerates_index (line 11) | public function test_command_regenerates_index() FILE: tests/Commands/ResetMfaCommandTest.php class ResetMfaCommandTest (line 9) | class ResetMfaCommandTest extends TestCase method test_command_requires_email_or_id_option (line 11) | public function test_command_requires_email_or_id_option() method test_command_runs_with_provided_email (line 18) | public function test_command_runs_with_provided_email() method test_command_runs_with_provided_id (line 32) | public function test_command_runs_with_provided_id() method test_saying_no_to_confirmation_does_not_reset_mfa (line 46) | public function test_saying_no_to_confirmation_does_not_reset_mfa() method test_giving_non_existing_user_shows_error_message (line 59) | public function test_giving_non_existing_user_shows_error_message() FILE: tests/Commands/UpdateUrlCommandTest.php class UpdateUrlCommandTest (line 10) | class UpdateUrlCommandTest extends TestCase method test_command_updates_page_content (line 12) | public function test_command_updates_page_content() method test_command_updates_description_html (line 28) | public function test_command_updates_description_html() method test_command_requires_valid_url (line 50) | public function test_command_requires_valid_url() method test_command_force_option_skips_prompt (line 61) | public function test_command_force_option_skips_prompt() method test_command_updates_settings (line 68) | public function test_command_updates_settings() method test_command_updates_array_settings (line 79) | public function test_command_updates_array_settings() method test_command_updates_page_revisions (line 90) | public function test_command_updates_page_revisions() method runUpdate (line 111) | protected function runUpdate(string $oldUrl, string $newUrl) FILE: tests/Commands/UpgradeDatabaseEncodingCommandTest.php class UpgradeDatabaseEncodingCommandTest (line 7) | class UpgradeDatabaseEncodingCommandTest extends TestCase method test_command_outputs_sql (line 9) | public function test_command_outputs_sql() FILE: tests/CreatesApplication.php type CreatesApplication (line 8) | trait CreatesApplication method createApplication (line 13) | public function createApplication(): Application FILE: tests/DebugViewTest.php class DebugViewTest (line 8) | class DebugViewTest extends TestCase method test_debug_view_shows_expected_details (line 10) | public function test_debug_view_shows_expected_details() method test_debug_view_only_shows_when_debug_mode_is_enabled (line 33) | public function test_debug_view_only_shows_when_debug_mode_is_enabled() method getDebugViewForException (line 46) | protected function getDebugViewForException(\Exception $exception): Te... FILE: tests/Entity/BookShelfTest.php class BookShelfTest (line 12) | class BookShelfTest extends TestCase method test_shelves_shows_in_header_if_have_view_permissions (line 14) | public function test_shelves_shows_in_header_if_have_view_permissions() method test_shelves_shows_in_header_if_have_any_shelve_view_permission (line 35) | public function test_shelves_shows_in_header_if_have_any_shelve_view_p... method test_shelves_page_contains_create_link (line 51) | public function test_shelves_page_contains_create_link() method test_book_not_visible_in_shelf_list_view_if_user_cant_view_shelf (line 57) | public function test_book_not_visible_in_shelf_list_view_if_user_cant_... method test_shelves_create (line 76) | public function test_shelves_create() method test_shelves_create_sets_cover_image (line 107) | public function test_shelves_create_sets_cover_image() method test_shelf_view (line 129) | public function test_shelf_view() method test_shelf_view_shows_action_buttons (line 142) | public function test_shelf_view_shows_action_buttons() method test_shelf_view_has_sort_control_that_defaults_to_default (line 159) | public function test_shelf_view_has_sort_control_that_defaults_to_defa... method test_shelf_view_sort_takes_action (line 167) | public function test_shelf_view_sort_takes_action() method test_shelf_view_sorts_by_name_case_insensitively (line 200) | public function test_shelf_view_sorts_by_name_case_insensitively() method test_shelf_edit (line 225) | public function test_shelf_edit() method test_shelf_edit_does_not_alter_books_we_dont_have_access_to (line 263) | public function test_shelf_edit_does_not_alter_books_we_dont_have_acce... method test_shelf_create_new_book (line 292) | public function test_shelf_create_new_book() method test_shelf_delete (line 318) | public function test_shelf_delete() method test_shelf_copy_permissions (line 341) | public function test_shelf_copy_permissions() method test_permission_page_has_a_warning_about_no_cascading (line 368) | public function test_permission_page_has_a_warning_about_no_cascading() method test_bookshelves_show_in_breadcrumbs_if_in_context (line 375) | public function test_bookshelves_show_in_breadcrumbs_if_in_context() method test_bookshelves_show_on_book (line 401) | public function test_bookshelves_show_on_book() method test_cancel_on_child_book_creation_returns_to_original_shelf (line 430) | public function test_cancel_on_child_book_creation_returns_to_original... method test_show_view_displays_description_if_no_description_html_set (line 437) | public function test_show_view_displays_description_if_no_description_... FILE: tests/Entity/BookTest.php class BookTest (line 11) | class BookTest extends TestCase method test_create (line 13) | public function test_create() method test_create_uses_different_slugs_when_name_reused (line 33) | public function test_create_uses_different_slugs_when_name_reused() method test_create_sets_tags (line 51) | public function test_create_sets_tags() method test_update (line 78) | public function test_update() method test_update_sets_tags (line 101) | public function test_update_sets_tags() method test_delete (line 130) | public function test_delete() method test_delete_with_shelf_context_returns_to_shelf_view_after_delete (line 157) | public function test_delete_with_shelf_context_returns_to_shelf_view_a... method test_cancel_on_create_page_leads_back_to_books_listing (line 171) | public function test_cancel_on_create_page_leads_back_to_books_listing() method test_cancel_on_edit_book_page_leads_back_to_book (line 177) | public function test_cancel_on_edit_book_page_leads_back_to_book() method test_next_previous_navigation_controls_show_within_book_content (line 184) | public function test_next_previous_navigation_controls_show_within_boo... method test_recently_viewed_books_updates_as_expected (line 199) | public function test_recently_viewed_books_updates_as_expected() method test_popular_books_updates_upon_visits (line 215) | public function test_popular_books_updates_upon_visits() method test_books_view_shows_view_toggle_option (line 232) | public function test_books_view_shows_view_toggle_option() method test_description_limited_to_specific_html (line 255) | public function test_description_limited_to_specific_html() method test_show_view_displays_description_if_no_description_html_set (line 271) | public function test_show_view_displays_description_if_no_description_... method test_description_with_only_br_tags_results_in_empty_p_tag_used_on_show (line 282) | public function test_description_with_only_br_tags_results_in_empty_p_... FILE: tests/Entity/ChapterTest.php class ChapterTest (line 10) | class ChapterTest extends TestCase method test_create (line 12) | public function test_create() method test_show_view_displays_description_if_no_description_html_set (line 34) | public function test_show_view_displays_description_if_no_description_... method test_delete (line 45) | public function test_delete() method test_sort_book_action_visible_if_permissions_allow (line 71) | public function test_sort_book_action_visible_if_permissions_allow() FILE: tests/Entity/ConvertTest.php class ConvertTest (line 13) | class ConvertTest extends TestCase method test_chapter_edit_view_shows_convert_option (line 15) | public function test_chapter_edit_view_shows_convert_option() method test_convert_chapter_to_book (line 25) | public function test_convert_chapter_to_book() method test_convert_chapter_to_book_requires_permissions (line 50) | public function test_convert_chapter_to_book_requires_permissions() method test_book_edit_view_shows_convert_option (line 70) | public function test_book_edit_view_shows_convert_option() method test_book_convert_to_shelf (line 81) | public function test_book_convert_to_shelf() method test_book_convert_to_shelf_requires_permissions (line 124) | public function test_book_convert_to_shelf_requires_permissions() FILE: tests/Entity/CopyTest.php class CopyTest (line 13) | class CopyTest extends TestCase method test_book_show_view_has_copy_button (line 15) | public function test_book_show_view_has_copy_button() method test_book_copy_view (line 23) | public function test_book_copy_view() method test_book_copy (line 33) | public function test_book_copy() method test_book_copy_does_not_copy_non_visible_content (line 48) | public function test_book_copy_does_not_copy_non_visible_content() method test_book_copy_does_not_copy_pages_or_chapters_if_user_cant_create (line 66) | public function test_book_copy_does_not_copy_pages_or_chapters_if_user... method test_book_copy_clones_cover_image_if_existing (line 81) | public function test_book_copy_clones_cover_image_if_existing() method test_book_copy_adds_book_to_shelves_if_edit_permissions_allows (line 96) | public function test_book_copy_adds_book_to_shelves_if_edit_permission... method test_chapter_show_view_has_copy_button (line 119) | public function test_chapter_show_view_has_copy_button() method test_chapter_copy_view (line 127) | public function test_chapter_copy_view() method test_chapter_copy (line 138) | public function test_chapter_copy() method test_chapter_copy_does_not_copy_non_visible_pages (line 158) | public function test_chapter_copy_does_not_copy_non_visible_pages() method test_chapter_copy_does_not_copy_pages_if_user_cant_page_create (line 177) | public function test_chapter_copy_does_not_copy_pages_if_user_cant_pag... method test_book_copy_updates_internal_references (line 204) | public function test_book_copy_updates_internal_references() method test_chapter_copy_updates_internal_references (line 237) | public function test_chapter_copy_updates_internal_references() method test_chapter_copy_updates_internal_permalink_references_in_its_description (line 268) | public function test_chapter_copy_updates_internal_permalink_reference... method test_page_copy_updates_internal_self_references (line 287) | public function test_page_copy_updates_internal_self_references() method test_page_copy (line 309) | public function test_page_copy() method test_page_copy_with_markdown_has_both_html_and_markdown (line 332) | public function test_page_copy_with_markdown_has_both_html_and_markdown() method test_page_copy_with_no_destination (line 350) | public function test_page_copy_with_no_destination() method test_page_can_be_copied_without_edit_permission (line 369) | public function test_page_can_be_copied_without_edit_permission() FILE: tests/Entity/DefaultTemplateTest.php class DefaultTemplateTest (line 10) | class DefaultTemplateTest extends TestCase method test_creating_book_with_default_template (line 12) | public function test_creating_book_with_default_template() method test_creating_chapter_with_default_template (line 24) | public function test_creating_chapter_with_default_template() method test_updating_book_with_default_template (line 37) | public function test_updating_book_with_default_template() method test_updating_chapter_with_default_template (line 49) | public function test_updating_chapter_with_default_template() method test_default_book_template_cannot_be_set_if_not_a_template (line 61) | public function test_default_book_template_cannot_be_set_if_not_a_temp... method test_default_chapter_template_cannot_be_set_if_not_a_template (line 71) | public function test_default_chapter_template_cannot_be_set_if_not_a_t... method test_default_book_template_cannot_be_set_if_not_have_access (line 82) | public function test_default_book_template_cannot_be_set_if_not_have_a... method test_default_chapter_template_cannot_be_set_if_not_have_access (line 92) | public function test_default_chapter_template_cannot_be_set_if_not_hav... method test_inaccessible_book_default_template_can_be_set_if_unchanged (line 102) | public function test_inaccessible_book_default_template_can_be_set_if_... method test_inaccessible_chapter_default_template_can_be_set_if_unchanged (line 112) | public function test_inaccessible_chapter_default_template_can_be_set_... method test_default_page_template_option_shows_on_book_form (line 122) | public function test_default_page_template_option_shows_on_book_form() method test_default_page_template_option_shows_on_chapter_form (line 131) | public function test_default_page_template_option_shows_on_chapter_form() method test_book_default_page_template_option_only_shows_template_name_if_visible (line 140) | public function test_book_default_page_template_option_only_shows_temp... method test_chapter_default_page_template_option_only_shows_template_name_if_visible (line 155) | public function test_chapter_default_page_template_option_only_shows_t... method test_creating_book_page_uses_book_default_template (line 170) | public function test_creating_book_page_uses_book_default_template() method test_creating_chapter_page_uses_chapter_default_template (line 186) | public function test_creating_chapter_page_uses_chapter_default_templa... method test_creating_chapter_page_uses_book_default_template_if_no_chapter_template_set (line 202) | public function test_creating_chapter_page_uses_book_default_template_... method test_creating_chapter_page_uses_chapter_template_instead_of_book_template (line 219) | public function test_creating_chapter_page_uses_chapter_template_inste... method test_creating_page_as_guest_uses_default_template (line 241) | public function test_creating_page_as_guest_uses_default_template() method test_templates_not_used_if_not_visible (line 277) | public function test_templates_not_used_if_not_visible() method test_template_page_delete_removes_template_usage (line 305) | public function test_template_page_delete_removes_template_usage() method bookUsingDefaultTemplate (line 324) | protected function bookUsingDefaultTemplate(Page $page): Book method chapterUsingDefaultTemplate (line 333) | protected function chapterUsingDefaultTemplate(Page $page): Chapter FILE: tests/Entity/EntityAccessTest.php class EntityAccessTest (line 9) | class EntityAccessTest extends TestCase method test_entities_viewable_after_creator_deletion (line 11) | public function test_entities_viewable_after_creator_deletion() method test_entities_viewable_after_updater_deletion (line 23) | public function test_entities_viewable_after_updater_deletion() method checkEntitiesViewable (line 38) | private function checkEntitiesViewable(array $entities) FILE: tests/Entity/EntityQueryTest.php class EntityQueryTest (line 9) | class EntityQueryTest extends TestCase method test_basic_entity_query_has_join_and_type_applied (line 11) | public function test_basic_entity_query_has_join_and_type_applied() method test_joins_in_sub_queries_use_alias_names (line 19) | public function test_joins_in_sub_queries_use_alias_names() method test_book_chapter_relation_applies_type_condition (line 31) | public function test_book_chapter_relation_applies_type_condition() FILE: tests/Entity/MarkdownToHtmlTest.php class MarkdownToHtmlTest (line 8) | class MarkdownToHtmlTest extends TestCase method test_basic_formatting_conversion (line 10) | public function test_basic_formatting_conversion() method test_callouts_remain_html (line 18) | public function test_callouts_remain_html() method test_wysiwyg_code_format_handled_cleanly (line 26) | public function test_wysiwyg_code_format_handled_cleanly() method test_tasklist_checkboxes_are_handled (line 34) | public function test_tasklist_checkboxes_are_handled() method test_drawing_blocks_remain_html (line 42) | public function test_drawing_blocks_remain_html() method test_summary_tags_have_newlines_after_to_separate_content (line 50) | public function test_summary_tags_have_newlines_after_to_separate_cont... method test_iframes_tags_have_newlines_after_to_separate_content (line 58) | public function test_iframes_tags_have_newlines_after_to_separate_cont... method assertConversion (line 66) | protected function assertConversion(string $html, string $expectedMark... FILE: tests/Entity/PageContentFilteringTest.php class PageContentFilteringTest (line 7) | class PageContentFilteringTest extends TestCase method test_page_content_scripts_removed_by_default (line 9) | public function test_page_content_scripts_removed_by_default() method test_more_complex_content_script_escaping_scenarios (line 23) | public function test_more_complex_content_script_escaping_scenarios() method test_js_and_base64_src_urls_are_removed (line 50) | public function test_js_and_base64_src_urls_are_removed() method test_javascript_uri_links_are_removed (line 110) | public function test_javascript_uri_links_are_removed() method test_form_filtering_is_controlled_by_config (line 135) | public function test_form_filtering_is_controlled_by_config() method test_form_actions_with_javascript_are_removed (line 148) | public function test_form_actions_with_javascript_are_removed() method test_form_elements_are_removed (line 177) | public function test_form_elements_are_removed() method test_form_attributes_are_removed (line 222) | public function test_form_attributes_are_removed() method test_metadata_redirects_are_removed (line 271) | public function test_metadata_redirects_are_removed() method test_page_inline_on_attributes_removed_by_default (line 297) | public function test_page_inline_on_attributes_removed_by_default() method test_more_complex_inline_on_attributes_escaping_scenarios (line 313) | public function test_more_complex_inline_on_attributes_escaping_scenar... method test_page_content_scripts_show_with_filters_disabled (line 341) | public function test_page_content_scripts_show_with_filters_disabled() method test_svg_script_usage_is_removed (line 356) | public function test_svg_script_usage_is_removed() method test_page_inline_on_attributes_show_with_filters_disabled (line 388) | public function test_page_inline_on_attributes_show_with_filters_disab... method test_non_content_filtering_is_controlled_by_config (line 403) | public function test_non_content_filtering_is_controlled_by_config() method test_non_content_filtering (line 423) | public function test_non_content_filtering() method test_allow_list_filtering_is_controlled_by_config (line 444) | public function test_allow_list_filtering_is_controlled_by_config() method test_allow_list_style_filtering (line 460) | public function test_allow_list_style_filtering() method test_allow_list_does_not_filter_cases (line 482) | public function test_allow_list_does_not_filter_cases() FILE: tests/Entity/PageContentTest.php class PageContentTest (line 9) | class PageContentTest extends TestCase method test_page_includes (line 13) | public function test_page_includes() method test_saving_page_with_includes (line 42) | public function test_saving_page_with_includes() method test_page_includes_rendered_on_book_export (line 60) | public function test_page_includes_rendered_on_book_export() method test_page_includes_can_be_nested_up_to_three_times (line 79) | public function test_page_includes_can_be_nested_up_to_three_times() method test_page_includes_to_nonexisting_pages_does_not_error (line 91) | public function test_page_includes_to_nonexisting_pages_does_not_error() method test_duplicate_ids_does_not_break_page_render (line 104) | public function test_duplicate_ids_does_not_break_page_render() method test_duplicate_ids_fixed_on_page_save (line 121) | public function test_duplicate_ids_fixed_on_page_save() method test_anchors_referencing_non_bkmrk_ids_rewritten_after_save (line 138) | public function test_anchors_referencing_non_bkmrk_ids_rewritten_after... method test_get_page_nav_sets_correct_properties (line 155) | public function test_get_page_nav_sets_correct_properties() method test_get_page_nav_does_not_show_empty_titles (line 182) | public function test_get_page_nav_does_not_show_empty_titles() method test_get_page_nav_shifts_headers_if_only_smaller_ones_are_used (line 196) | public function test_get_page_nav_shifts_headers_if_only_smaller_ones_... method test_get_page_nav_respects_non_breaking_spaces (line 217) | public function test_get_page_nav_respects_non_breaking_spaces() method test_page_text_decodes_html_entities (line 231) | public function test_page_text_decodes_html_entities() method test_page_markdown_table_rendering (line 245) | public function test_page_markdown_table_rendering() method test_page_markdown_task_list_rendering (line 266) | public function test_page_markdown_task_list_rendering() method test_page_markdown_strikethrough_rendering (line 287) | public function test_page_markdown_strikethrough_rendering() method test_page_markdown_single_html_comment_saving (line 305) | public function test_page_markdown_single_html_comment_saving() method test_base64_images_get_extracted_from_page_content (line 325) | public function test_base64_images_get_extracted_from_page_content() method test_base64_images_get_extracted_when_containing_whitespace (line 347) | public function test_base64_images_get_extracted_when_containing_white... method test_base64_images_within_html_blanked_if_not_supported_extension_for_extract (line 371) | public function test_base64_images_within_html_blanked_if_not_supporte... method test_base64_images_within_html_blanked_if_no_image_create_permission (line 393) | public function test_base64_images_within_html_blanked_if_no_image_cre... method test_base64_images_within_html_blanked_if_content_does_not_appear_like_an_image (line 408) | public function test_base64_images_within_html_blanked_if_content_does... method test_base64_images_get_extracted_from_markdown_page_content (line 422) | public function test_base64_images_get_extracted_from_markdown_page_co... method test_markdown_base64_extract_not_limited_by_pcre_limits (line 444) | public function test_markdown_base64_extract_not_limited_by_pcre_limits() method test_base64_images_within_markdown_blanked_if_not_supported_extension_for_extract (line 477) | public function test_base64_images_within_markdown_blanked_if_not_supp... method test_base64_images_within_markdown_blanked_if_no_image_create_permission (line 489) | public function test_base64_images_within_markdown_blanked_if_no_image... method test_base64_images_within_markdown_blanked_if_content_does_not_appear_like_an_image (line 503) | public function test_base64_images_within_markdown_blanked_if_content_... method test_nested_headers_gets_assigned_an_id (line 517) | public function test_nested_headers_gets_assigned_an_id() method test_non_breaking_spaces_are_preserved (line 533) | public function test_non_breaking_spaces_are_preserved() method test_page_save_with_many_headers_and_links_is_reasonable (line 546) | public function test_page_save_with_many_headers_and_links_is_reasonab... FILE: tests/Entity/PageDraftTest.php class PageDraftTest (line 10) | class PageDraftTest extends TestCase method setUp (line 15) | protected function setUp(): void method test_draft_content_shows_if_available (line 22) | public function test_draft_content_shows_if_available() method test_draft_not_visible_by_others (line 35) | public function test_draft_not_visible_by_others() method test_alert_message_shows_if_editing_draft (line 49) | public function test_alert_message_shows_if_editing_draft() method test_alert_message_shows_if_someone_else_editing (line 57) | public function test_alert_message_shows_if_someone_else_editing() method test_draft_save_shows_alert_if_draft_older_than_last_page_update (line 76) | public function test_draft_save_shows_alert_if_draft_older_than_last_p... method test_draft_save_shows_alert_if_draft_edit_started_by_someone_else (line 110) | public function test_draft_save_shows_alert_if_draft_edit_started_by_s... method test_draft_pages_show_on_homepage (line 131) | public function test_draft_pages_show_on_homepage() method test_draft_pages_not_visible_by_others (line 142) | public function test_draft_pages_not_visible_by_others() method test_page_html_in_ajax_fetch_response (line 159) | public function test_page_html_in_ajax_fetch_response() method test_user_draft_removed_on_user_drafts_delete_call (line 171) | public function test_user_draft_removed_on_user_drafts_delete_call() method test_updating_page_draft_with_markdown_retains_markdown_content (line 195) | public function test_updating_page_draft_with_markdown_retains_markdow... method test_slug_generated_on_draft_publish_to_page_when_no_name_change (line 220) | public function test_slug_generated_on_draft_publish_to_page_when_no_n... FILE: tests/Entity/PageEditorTest.php class PageEditorTest (line 10) | class PageEditorTest extends TestCase method setUp (line 14) | protected function setUp(): void method test_default_editor_is_wysiwyg_for_new_pages (line 20) | public function test_default_editor_is_wysiwyg_for_new_pages() method test_editor_set_for_new_pages (line 27) | public function test_editor_set_for_new_pages() method test_markdown_setting_shows_markdown_editor_for_new_pages (line 42) | public function test_markdown_setting_shows_markdown_editor_for_new_pa... method test_markdown_content_given_to_editor (line 52) | public function test_markdown_content_given_to_editor() method test_html_content_given_to_editor_if_no_markdown (line 63) | public function test_html_content_given_to_editor_if_no_markdown() method test_empty_markdown_still_saves_without_error (line 72) | public function test_empty_markdown_still_saves_without_error() method test_back_link_in_editor_has_correct_url (line 95) | public function test_back_link_in_editor_has_correct_url() method test_switching_from_html_to_clean_markdown_works (line 121) | public function test_switching_from_html_to_clean_markdown_works() method test_switching_from_html_to_stable_markdown_works (line 133) | public function test_switching_from_html_to_stable_markdown_works() method test_switching_from_markdown_to_wysiwyg_works (line 145) | public function test_switching_from_markdown_to_wysiwyg_works() method test_switching_from_markdown_to_wysiwyg2024_works (line 158) | public function test_switching_from_markdown_to_wysiwyg2024_works() method test_page_editor_changes_with_editor_property (line 171) | public function test_page_editor_changes_with_editor_property() method test_editor_type_switch_options_show (line 190) | public function test_editor_type_switch_options_show() method test_editor_type_switch_options_dont_show_if_without_change_editor_permissions (line 203) | public function test_editor_type_switch_options_dont_show_if_without_c... method test_page_editor_type_switch_does_not_work_without_change_editor_permissions (line 210) | public function test_page_editor_type_switch_does_not_work_without_cha... method test_page_save_does_not_change_active_editor_without_change_editor_permissions (line 222) | public function test_page_save_does_not_change_active_editor_without_c... method test_editor_type_change_to_wysiwyg_infers_type_from_request_or_uses_system_default (line 233) | public function test_editor_type_change_to_wysiwyg_infers_type_from_re... method test_editor_html_content_is_filtered_if_loaded_by_a_different_user (line 269) | public function test_editor_html_content_is_filtered_if_loaded_by_a_di... method test_editor_html_filtered_does_not_cause_error_if_empty (line 286) | public function test_editor_html_filtered_does_not_cause_error_if_empty() FILE: tests/Entity/PageRevisionTest.php class PageRevisionTest (line 9) | class PageRevisionTest extends TestCase method test_revision_links_visible_to_viewer (line 11) | public function test_revision_links_visible_to_viewer() method test_page_revision_views_viewable (line 21) | public function test_page_revision_views_viewable() method test_page_revision_preview_shows_content_of_revision (line 37) | public function test_page_revision_preview_shows_content_of_revision() method test_page_revision_preview_filters_html_content (line 50) | public function test_page_revision_preview_filters_html_content() method test_page_revision_restore_updates_content (line 64) | public function test_page_revision_restore_updates_content() method test_page_revision_restore_with_markdown_retains_markdown_content (line 88) | public function test_page_revision_restore_with_markdown_retains_markd... method test_page_revision_restore_sets_new_revision_with_summary (line 116) | public function test_page_revision_restore_sets_new_revision_with_summ... method test_page_revision_count_increments_on_update (line 139) | public function test_page_revision_count_increments_on_update() method test_revision_count_shown_in_page_meta (line 148) | public function test_revision_count_shown_in_page_meta() method test_revision_deletion (line 157) | public function test_revision_deletion() method test_revision_limit_enforced (line 186) | public function test_revision_limit_enforced() method test_false_revision_limit_allows_many_revisions (line 196) | public function test_false_revision_limit_allows_many_revisions() method test_revision_list_shows_editor_type (line 206) | public function test_revision_list_shows_editor_type() method test_revision_changes_link_not_shown_for_oldest_revision (line 220) | public function test_revision_changes_link_not_shown_for_oldest_revisi... method test_revision_changes_view_shows_diff (line 232) | public function test_revision_changes_view_shows_diff() method test_revision_changes_view_filters_html_content (line 245) | public function test_revision_changes_view_filters_html_content() method test_revision_restore_action_only_visible_with_permission (line 260) | public function test_revision_restore_action_only_visible_with_permiss... method test_revision_delete_action_only_visible_with_permission (line 278) | public function test_revision_delete_action_only_visible_with_permissi... method createRevisions (line 296) | protected function createRevisions(Page $page, int $times, array $attr... FILE: tests/Entity/PageTemplateTest.php class PageTemplateTest (line 8) | class PageTemplateTest extends TestCase method test_active_templates_visible_on_page_view (line 10) | public function test_active_templates_visible_on_page_view() method test_manage_templates_permission_required_to_change_page_template_status (line 25) | public function test_manage_templates_permission_required_to_change_pa... method test_templates_content_should_be_fetchable_only_if_page_marked_as_template (line 52) | public function test_templates_content_should_be_fetchable_only_if_pag... method test_template_endpoint_returns_paginated_list_of_templates (line 74) | public function test_template_endpoint_returns_paginated_list_of_templ... FILE: tests/Entity/PageTest.php class PageTest (line 11) | class PageTest extends TestCase method test_create (line 13) | public function test_create() method test_page_view_when_creator_is_deleted_but_owner_exists (line 39) | public function test_page_view_when_creator_is_deleted_but_owner_exists() method test_page_show_includes_pointer_section_select_mode_button (line 54) | public function test_page_show_includes_pointer_section_select_mode_bu... method test_page_creation_with_markdown_content (line 61) | public function test_page_creation_with_markdown_content() method test_page_creation_allows_summary_to_be_set (line 90) | public function test_page_creation_allows_summary_to_be_set() method test_page_delete (line 116) | public function test_page_delete() method test_page_full_delete_removes_all_revisions (line 136) | public function test_page_full_delete_removes_all_revisions() method test_page_full_delete_nulls_related_images (line 162) | public function test_page_full_delete_nulls_related_images() method test_page_within_chapter_deletion_returns_to_chapter (line 181) | public function test_page_within_chapter_deletion_returns_to_chapter() method test_recently_updated_pages_view (line 190) | public function test_recently_updated_pages_view() method test_recently_updated_pages_view_shows_updated_by_details (line 199) | public function test_recently_updated_pages_view_shows_updated_by_deta... method test_recently_updated_pages_view_shows_parent_chain (line 213) | public function test_recently_updated_pages_view_shows_parent_chain() method test_recently_updated_pages_view_does_not_show_parent_if_not_visible (line 228) | public function test_recently_updated_pages_view_does_not_show_parent_... method test_recently_updated_pages_on_home (line 247) | public function test_recently_updated_pages_on_home() method test_page_edit_without_update_permissions_but_with_view_redirects_to_page (line 267) | public function test_page_edit_without_update_permissions_but_with_vie... FILE: tests/Entity/SlugTest.php class SlugTest (line 8) | class SlugTest extends TestCase method test_slug_multi_byte_url_safe (line 10) | public function test_slug_multi_byte_url_safe() method test_slug_format (line 25) | public function test_slug_format() method test_old_page_slugs_redirect_to_new_pages (line 34) | public function test_old_page_slugs_redirect_to_new_pages() method test_old_shelf_slugs_redirect_to_new_shelf (line 48) | public function test_old_shelf_slugs_redirect_to_new_shelf() method test_old_book_slugs_redirect_to_new_book (line 61) | public function test_old_book_slugs_redirect_to_new_book() method test_old_chapter_slugs_redirect_to_new_chapter (line 74) | public function test_old_chapter_slugs_redirect_to_new_chapter() method test_old_book_slugs_in_page_urls_redirect_to_current_page_url (line 87) | public function test_old_book_slugs_in_page_urls_redirect_to_current_p... method test_old_book_slugs_in_chapter_urls_redirect_to_current_chapter_url (line 101) | public function test_old_book_slugs_in_chapter_urls_redirect_to_curren... method test_slug_lookup_controlled_by_permissions (line 115) | public function test_slug_lookup_controlled_by_permissions() method test_slugs_recorded_in_history_on_page_update (line 136) | public function test_slugs_recorded_in_history_on_page_update() method test_slugs_recorded_in_history_on_chapter_update (line 156) | public function test_slugs_recorded_in_history_on_chapter_update() method test_slugs_recorded_in_history_on_book_update (line 175) | public function test_slugs_recorded_in_history_on_book_update() method test_slugs_recorded_in_history_on_shelf_update (line 194) | public function test_slugs_recorded_in_history_on_shelf_update() FILE: tests/Entity/TagTest.php class TagTest (line 10) | class TagTest extends TestCase method getEntityWithTags (line 17) | protected function getEntityWithTags($class, ?array $tags = null): Entity method test_tag_name_suggestions (line 30) | public function test_tag_name_suggestions() method test_tag_value_suggestions (line 48) | public function test_tag_value_suggestions() method test_entity_permissions_effect_tag_suggestions (line 66) | public function test_entity_permissions_effect_tag_suggestions() method test_tags_shown_on_search_listing (line 84) | public function test_tags_shown_on_search_listing() method test_tags_index_shows_tag_name_as_expected_with_right_counts (line 100) | public function test_tags_index_shows_tag_name_as_expected_with_right_... method test_tag_index_can_be_searched (line 127) | public function test_tag_index_can_be_searched() method test_tag_index_search_will_show_mulitple_values_of_a_single_tag_name (line 143) | public function test_tag_index_search_will_show_mulitple_values_of_a_s... method test_tag_index_can_be_scoped_to_specific_tag_name (line 154) | public function test_tag_index_can_be_scoped_to_specific_tag_name() method test_tags_index_adheres_to_page_permissions (line 171) | public function test_tags_index_adheres_to_page_permissions() method test_tag_index_shows_message_on_no_results (line 189) | public function test_tag_index_shows_message_on_no_results() method test_tag_index_does_not_include_tags_on_recycle_bin_items (line 196) | public function test_tag_index_does_not_include_tags_on_recycle_bin_it... method test_tag_classes_visible_on_entities (line 214) | public function test_tag_classes_visible_on_entities() method test_tag_classes_are_escaped (line 225) | public function test_tag_classes_are_escaped() method test_parent_tag_classes_visible (line 234) | public function test_parent_tag_classes_visible() method test_parent_tag_classes_not_visible_if_cannot_see_parent (line 249) | public function test_parent_tag_classes_not_visible_if_cannot_see_pare... FILE: tests/ErrorTest.php class ErrorTest (line 8) | class ErrorTest extends TestCase method test_404_page_does_not_show_login (line 10) | public function test_404_page_does_not_show_login() method test_404_page_does_not_non_visible_content (line 26) | public function test_404_page_does_not_non_visible_content() method test_404_page_shows_visible_content_within_non_visible_parent (line 38) | public function test_404_page_shows_visible_content_within_non_visible... method test_item_not_found_does_not_get_logged_to_file (line 55) | public function test_item_not_found_does_not_get_logged_to_file() method test_access_to_non_existing_image_location_provides_404_response (line 72) | public function test_access_to_non_existing_image_location_provides_40... method test_posts_above_php_limit_shows_friendly_error (line 79) | public function test_posts_above_php_limit_shows_friendly_error() FILE: tests/Exports/ExportUiTest.php class ExportUiTest (line 8) | class ExportUiTest extends TestCase method test_export_option_only_visible_and_accessible_with_permission (line 10) | public function test_export_option_only_visible_and_accessible_with_pe... FILE: tests/Exports/HtmlExportTest.php class HtmlExportTest (line 11) | class HtmlExportTest extends TestCase method test_page_html_export (line 13) | public function test_page_html_export() method test_book_html_export (line 24) | public function test_book_html_export() method test_book_html_export_shows_html_descriptions (line 37) | public function test_book_html_export_shows_html_descriptions() method test_chapter_html_export (line 51) | public function test_chapter_html_export() method test_chapter_html_export_shows_html_descriptions (line 64) | public function test_chapter_html_export_shows_html_descriptions() method test_page_html_export_contains_custom_head_if_set (line 74) | public function test_page_html_export_contains_custom_head_if_set() method test_page_html_export_does_not_break_with_only_comments_in_custom_head (line 85) | public function test_page_html_export_does_not_break_with_only_comment... method test_page_html_export_use_absolute_dates (line 97) | public function test_page_html_export_use_absolute_dates() method test_page_export_does_not_include_user_or_revision_links (line 108) | public function test_page_export_does_not_include_user_or_revision_lin... method test_page_export_sets_right_data_type_for_svg_embeds (line 118) | public function test_page_export_sets_right_data_type_for_svg_embeds() method test_page_image_containment_works_on_multiple_images_within_a_single_line (line 134) | public function test_page_image_containment_works_on_multiple_images_w... method test_page_export_contained_html_image_fetches_only_run_when_url_points_to_image_upload_folder (line 150) | public function test_page_export_contained_html_image_fetches_only_run... method test_page_export_contained_html_does_not_allow_upward_traversal_with_local (line 172) | public function test_page_export_contained_html_does_not_allow_upward_... method test_page_export_contained_html_does_not_allow_upward_traversal_with_local_secure (line 185) | public function test_page_export_contained_html_does_not_allow_upward_... method test_exports_removes_scripts_from_custom_head (line 200) | public function test_exports_removes_scripts_from_custom_head() method test_page_export_with_deleted_creator_and_updater (line 215) | public function test_page_export_with_deleted_creator_and_updater() method test_html_exports_contain_csp_meta_tag (line 232) | public function test_html_exports_contain_csp_meta_tag() method test_html_exports_contain_body_classes_for_export_identification (line 246) | public function test_html_exports_contain_body_classes_for_export_iden... FILE: tests/Exports/MarkdownExportTest.php class MarkdownExportTest (line 8) | class MarkdownExportTest extends TestCase method test_page_markdown_export (line 10) | public function test_page_markdown_export() method test_page_markdown_export_uses_existing_markdown_if_apparent (line 20) | public function test_page_markdown_export_uses_existing_markdown_if_ap... method test_page_markdown_export_converts_html_where_no_markdown (line 33) | public function test_page_markdown_export_converts_html_where_no_markd... method test_chapter_markdown_export (line 45) | public function test_chapter_markdown_export() method test_chapter_markdown_export_pages_are_permission_controlled (line 59) | public function test_chapter_markdown_export_pages_are_permission_cont... method test_book_markdown_export (line 73) | public function test_book_markdown_export() method test_book_markdown_export_chapters_are_permission_controlled (line 93) | public function test_book_markdown_export_chapters_are_permission_cont... method test_book_markdown_export_direct_pages_are_permission_controlled (line 111) | public function test_book_markdown_export_direct_pages_are_permission_... method test_book_markdown_export_concats_immediate_pages_with_newlines (line 125) | public function test_book_markdown_export_concats_immediate_pages_with... FILE: tests/Exports/PdfExportTest.php class PdfExportTest (line 11) | class PdfExportTest extends TestCase method test_page_pdf_export (line 13) | public function test_page_pdf_export() method test_book_pdf_export (line 23) | public function test_book_pdf_export() method test_chapter_pdf_export (line 34) | public function test_chapter_pdf_export() method test_page_pdf_export_converts_iframes_to_links (line 45) | public function test_page_pdf_export_converts_iframes_to_links() method test_page_pdf_export_opens_details_blocks (line 64) | public function test_page_pdf_export_opens_details_blocks() method test_wkhtmltopdf_only_used_when_allow_untrusted_is_true (line 82) | public function test_wkhtmltopdf_only_used_when_allow_untrusted_is_true() method test_pdf_command_option_used_if_set (line 97) | public function test_pdf_command_option_used_if_set() method test_pdf_command_option_errors_if_output_path_not_written_to (line 110) | public function test_pdf_command_option_errors_if_output_path_not_writ... method test_pdf_command_option_errors_if_command_returns_error_status (line 121) | public function test_pdf_command_option_errors_if_command_returns_erro... method test_pdf_command_timeout_option_limits_export_time (line 132) | public function test_pdf_command_timeout_option_limits_export_time() method test_pdf_command_option_does_not_leave_temp_files (line 148) | public function test_pdf_command_option_does_not_leave_temp_files() FILE: tests/Exports/TextExportTest.php class TextExportTest (line 7) | class TextExportTest extends TestCase method test_page_text_export (line 9) | public function test_page_text_export() method test_book_text_export (line 20) | public function test_book_text_export() method test_book_text_export_format (line 41) | public function test_book_text_export_format() method test_chapter_text_export (line 59) | public function test_chapter_text_export() method test_chapter_text_export_format (line 74) | public function test_chapter_text_export_format() FILE: tests/Exports/ZipExportTest.php class ZipExportTest (line 16) | class ZipExportTest extends TestCase method test_export_results_in_zip_format (line 18) | public function test_export_results_in_zip_format() method test_export_metadata (line 40) | public function test_export_metadata() method test_export_leaves_no_temp_files (line 64) | public function test_export_leaves_no_temp_files() method test_page_export (line 82) | public function test_page_export() method test_page_export_with_markdown (line 100) | public function test_page_export_with_markdown() method test_page_export_with_tags (line 115) | public function test_page_export_with_tags() method test_page_export_with_images (line 139) | public function test_page_export_with_images() method test_page_export_file_attachments (line 167) | public function test_page_export_file_attachments() method test_page_export_link_attachments (line 193) | public function test_page_export_link_attachments() method test_book_export (line 218) | public function test_book_export() method test_book_export_with_cover_image (line 237) | public function test_book_export_with_cover_image() method test_chapter_export (line 255) | public function test_chapter_export() method test_draft_pages_are_not_included (line 273) | public function test_draft_pages_are_not_included() method test_cross_reference_links_are_converted (line 303) | public function test_cross_reference_links_are_converted() method test_book_and_chapter_description_links_to_images_in_pages_are_converted (line 327) | public function test_book_and_chapter_description_links_to_images_in_p... method test_image_links_are_handled_when_using_external_storage_url (line 353) | public function test_image_links_are_handled_when_using_external_stora... method test_orphaned_images_can_be_used_on_default_local_storage (line 377) | public function test_orphaned_images_can_be_used_on_default_local_stor... method test_orphaned_images_cannot_be_used_on_local_secure_restricted (line 402) | public function test_orphaned_images_cannot_be_used_on_local_secure_re... method test_cross_reference_links_external_to_export_are_not_converted (line 425) | public function test_cross_reference_links_external_to_export_are_not_... method test_attachments_links_are_converted (line 438) | public function test_attachments_links_are_converted() method test_links_in_markdown_are_parsed (line 459) | public function test_links_in_markdown_are_parsed() method test_exports_rate_limited_low_for_guest_viewers (line 474) | public function test_exports_rate_limited_low_for_guest_viewers() method test_exports_rate_limited_higher_for_logged_in_viewers (line 485) | public function test_exports_rate_limited_higher_for_logged_in_viewers() FILE: tests/Exports/ZipExportValidatorTest.php class ZipExportValidatorTest (line 14) | class ZipExportValidatorTest extends TestCase method tearDown (line 18) | protected function tearDown(): void method getValidatorForData (line 27) | protected function getValidatorForData(array $zipData, array $files = ... method test_ids_have_to_be_unique (line 36) | public function test_ids_have_to_be_unique() method test_image_files_need_to_be_a_valid_detected_image_file (line 75) | public function test_image_files_need_to_be_a_valid_detected_image_file() FILE: tests/Exports/ZipImportRunnerTest.php class ZipImportRunnerTest (line 13) | class ZipImportRunnerTest extends TestCase method setUp (line 17) | protected function setUp(): void method test_book_import (line 23) | public function test_book_import() method test_chapter_import (line 172) | public function test_chapter_import() method test_page_import (line 258) | public function test_page_import() method test_revert_cleans_up_uploaded_files (line 316) | public function test_revert_cleans_up_uploaded_files() method test_imported_images_have_their_detected_extension_added (line 363) | public function test_imported_images_have_their_detected_extension_add... method test_drawing_references_are_updated_within_content (line 398) | public function test_drawing_references_are_updated_within_content() method test_error_thrown_if_zip_item_exceeds_app_file_upload_limit (line 436) | public function test_error_thrown_if_zip_item_exceeds_app_file_upload_... method test_error_thrown_if_zip_data_exceeds_app_file_upload_limit (line 467) | public function test_error_thrown_if_zip_data_exceeds_app_file_upload_... FILE: tests/Exports/ZipImportTest.php class ZipImportTest (line 16) | class ZipImportTest extends TestCase method test_import_page_view (line 18) | public function test_import_page_view() method test_permissions_needed_for_import_page (line 25) | public function test_permissions_needed_for_import_page() method test_import_page_pending_import_visibility_limited (line 44) | public function test_import_page_pending_import_visibility_limited() method test_zip_read_errors_are_shown_on_validation (line 63) | public function test_zip_read_errors_are_shown_on_validation() method test_error_shown_if_missing_data (line 75) | public function test_error_shown_if_missing_data() method test_error_shown_if_no_importable_key (line 92) | public function test_error_shown_if_no_importable_key() method test_zip_data_validation_messages_shown (line 104) | public function test_zip_data_validation_messages_shown() method test_import_upload_success (line 133) | public function test_import_upload_success() method test_import_show_page (line 175) | public function test_import_show_page() method test_import_show_page_access_limited (line 198) | public function test_import_show_page_access_limited() method test_import_delete (line 220) | public function test_import_delete() method test_import_delete_access_limited (line 247) | public function test_import_delete_access_limited() method test_run_simple_success_scenario (line 268) | public function test_run_simple_success_scenario() method test_import_run_access_limited (line 295) | public function test_import_run_access_limited() method test_run_revalidates_content (line 316) | public function test_run_revalidates_content() method test_run_checks_permissions_on_import (line 334) | public function test_run_checks_permissions_on_import() method test_run_requires_parent_for_chapter_and_page_imports (line 351) | public function test_run_requires_parent_for_chapter_and_page_imports() method test_run_validates_correct_parent_type (line 376) | public function test_run_validates_correct_parent_type() method runImportFromFile (line 392) | protected function runImportFromFile(UploadedFile $file): TestResponse FILE: tests/Exports/ZipResultData.php class ZipResultData (line 5) | class ZipResultData method __construct (line 7) | public function __construct( method extractPath (line 17) | public function extractPath(string $path): string FILE: tests/Exports/ZipTestHelper.php class ZipTestHelper (line 10) | class ZipTestHelper method importFromData (line 12) | public static function importFromData(array $importData, array $zipDat... method deleteZipForImport (line 36) | public static function deleteZipForImport(Import $import): void method zipUploadFromData (line 44) | public static function zipUploadFromData(array $data, array $files = [... method extractFromZipResponse (line 61) | public static function extractFromZipResponse(TestResponse $response):... FILE: tests/FavouriteTest.php class FavouriteTest (line 8) | class FavouriteTest extends TestCase method test_page_add_favourite_flow (line 10) | public function test_page_add_favourite_flow() method test_page_remove_favourite_flow (line 33) | public function test_page_remove_favourite_flow() method test_add_and_remove_redirect_to_entity_without_history (line 59) | public function test_add_and_remove_redirect_to_entity_without_history() method test_favourite_flow_with_own_permissions (line 76) | public function test_favourite_flow_with_own_permissions() method test_each_entity_type_shows_favourite_button (line 99) | public function test_each_entity_type_shows_favourite_button() method test_header_contains_link_to_favourites_page_when_logged_in (line 109) | public function test_header_contains_link_to_favourites_page_when_logg... method test_favourites_shown_on_homepage (line 118) | public function test_favourites_shown_on_homepage() method test_favourites_list_page_shows_favourites_and_has_working_pagination (line 133) | public function test_favourites_list_page_shows_favourites_and_has_wor... FILE: tests/Helpers/EntityProvider.php class EntityProvider (line 23) | class EntityProvider method page (line 38) | public function page(callable|null $queryFilter = null): Page method pageWithinChapter (line 46) | public function pageWithinChapter(): Page method pageNotWithinChapter (line 51) | public function pageNotWithinChapter(): Page method templatePage (line 56) | public function templatePage(): Page method chapter (line 68) | public function chapter(callable|null $queryFilter = null): Chapter method chapterHasPages (line 76) | public function chapterHasPages(): Chapter method book (line 84) | public function book(callable|null $queryFilter = null): Book method bookHasChaptersAndPages (line 95) | public function bookHasChaptersAndPages(): Book method shelf (line 105) | public function shelf(callable|null $queryFilter = null): Bookshelf method shelfHasBooks (line 116) | public function shelfHasBooks(): Bookshelf method all (line 125) | public function all(): array method updatePage (line 135) | public function updatePage(Page $page, array $data): Page method createChainBelongingToUser (line 145) | public function createChainBelongingToUser(User $creatorUser, ?User $u... method newShelf (line 166) | public function newShelf(array $input = ['name' => 'test shelf', 'desc... method newBook (line 176) | public function newBook(array $input = ['name' => 'test book', 'descri... method newChapter (line 186) | public function newChapter(array $input, Book $book): Chapter method newPage (line 196) | public function newPage(array $input = ['name' => 'test page', 'html' ... method newDraftPage (line 208) | public function newDraftPage(array $input = ['name' => 'test page', 'h... method sendToRecycleBin (line 221) | public function sendToRecycleBin(Entity $entity) method destroy (line 245) | public function destroy(Entity $entity) method addToCache (line 254) | protected function addToCache($entities): void FILE: tests/Helpers/FileProvider.php class FileProvider (line 13) | class FileProvider method testFilePath (line 18) | public function testFilePath(string $fileName): string method imageFromBase64File (line 28) | public function imageFromBase64File(string $base64FileName, string $im... method uploadedImage (line 42) | public function uploadedImage(string $fileName, string $testDataFileNa... method uploadedTextFile (line 50) | public function uploadedTextFile(string $fileName): UploadedFile method pngImageData (line 58) | public function pngImageData(): string method jpegImageData (line 66) | public function jpegImageData(): string method expectedImagePath (line 74) | public function expectedImagePath(string $imageType, string $fileName)... method uploadGalleryImage (line 82) | public function uploadGalleryImage(TestCase $case, string $name, int $... method uploadGalleryImageToPage (line 96) | public function uploadGalleryImageToPage(TestCase $case, Page $page, s... method uploadAttachmentFile (line 116) | public function uploadAttachmentFile(TestCase $case, string $name, int... method uploadAttachmentDataToPage (line 127) | public function uploadAttachmentDataToPage(TestCase $case, Page $page,... method deleteAtRelativePath (line 142) | public function deleteAtRelativePath(string $path): void method relativeToFullPath (line 154) | public function relativeToFullPath(string $path): string method deleteAllAttachmentFiles (line 163) | public function deleteAllAttachmentFiles(): void method resetAppFavicon (line 174) | public function resetAppFavicon(): void FILE: tests/Helpers/OidcJwtHelper.php class OidcJwtHelper (line 11) | class OidcJwtHelper method defaultIssuer (line 13) | public static function defaultIssuer(): string method defaultClientId (line 18) | public static function defaultClientId(): string method defaultPayload (line 23) | public static function defaultPayload(): array method idToken (line 43) | public static function idToken($payloadOverrides = [], $headerOverride... method privateKeyInstance (line 62) | public static function privateKeyInstance() method base64UrlEncode (line 72) | public static function base64UrlEncode(string $decoded): string method publicPemKey (line 77) | public static function publicPemKey(): string method privatePemKey (line 90) | public static function privatePemKey(): string method publicJwkKeyArray (line 122) | public static function publicJwkKeyArray(): array FILE: tests/Helpers/PermissionsProvider.php class PermissionsProvider (line 13) | class PermissionsProvider method __construct (line 15) | public function __construct( method makeAppPublic (line 20) | public function makeAppPublic(): void method grantUserRolePermissions (line 29) | public function grantUserRolePermissions(User $user, array $permission... method removeUserRolePermissions (line 40) | public function removeUserRolePermissions(User $user, array $permissio... method changeEntityOwner (line 64) | public function changeEntityOwner(Entity $entity, User $newOwner): void method regenerateForEntity (line 75) | public function regenerateForEntity(Entity $entity): void method setEntityPermissions (line 86) | public function setEntityPermissions(Entity $entity, array $actions = ... method addEntityPermission (line 104) | public function addEntityPermission(Entity $entity, array $actionList,... method setFallbackPermissions (line 110) | public function setFallbackPermissions(Entity $entity, array $actionList) method disableEntityInheritedPermissions (line 121) | public function disableEntityInheritedPermissions(Entity $entity): void method addEntityPermissionEntries (line 128) | protected function addEntityPermissionEntries(Entity $entity, array $e... method actionListToEntityPermissionData (line 140) | protected function actionListToEntityPermissionData(array $actionList,... FILE: tests/Helpers/TestServiceProvider.php class TestServiceProvider (line 9) | class TestServiceProvider extends ServiceProvider method boot (line 16) | public function boot() FILE: tests/Helpers/UserRoleProvider.php class UserRoleProvider (line 9) | class UserRoleProvider method admin (line 17) | public function admin(): User method editor (line 30) | public function editor(): User method viewer (line 43) | public function viewer(array $attributes = []): User method guest (line 56) | public function guest(): User method newUser (line 64) | public function newUser(array $attrs = []): User method newUserWithRole (line 75) | public function newUserWithRole(array $userAttrs = [], array $rolePerm... method attachNewRole (line 87) | public function attachNewRole(User $user, array $rolePermissions = [])... method createRole (line 97) | public function createRole(array $rolePermissions = []): Role FILE: tests/HomepageTest.php class HomepageTest (line 8) | class HomepageTest extends TestCase method test_default_homepage_visible (line 10) | public function test_default_homepage_visible() method test_custom_homepage (line 20) | public function test_custom_homepage() method test_delete_custom_homepage (line 37) | public function test_delete_custom_homepage() method test_custom_homepage_can_be_deleted_once_custom_homepage_no_longer_used (line 63) | public function test_custom_homepage_can_be_deleted_once_custom_homepa... method test_custom_homepage_cannot_be_deleted_from_parent_deletion (line 80) | public function test_custom_homepage_cannot_be_deleted_from_parent_del... method test_custom_homepage_renders_includes (line 97) | public function test_custom_homepage_renders_includes() method test_set_book_homepage (line 115) | public function test_set_book_homepage() method test_set_bookshelves_homepage (line 131) | public function test_set_bookshelves_homepage() method test_books_and_bookshelves_homepage_has_expected_actions (line 147) | public function test_books_and_bookshelves_homepage_has_expected_actio... method test_shelves_list_homepage_adheres_to_book_visibility_permissions (line 160) | public function test_shelves_list_homepage_adheres_to_book_visibility_... method test_new_users_dont_have_any_recently_viewed (line 189) | public function test_new_users_dont_have_any_recently_viewed() FILE: tests/LanguageTest.php class LanguageTest (line 8) | class LanguageTest extends TestCase method setUp (line 15) | protected function setUp(): void method test_locales_list_set_properly (line 21) | public function test_locales_list_set_properly() method test_locales_all_have_language_dropdown_entry (line 30) | public function test_locales_all_have_language_dropdown_entry() method test_correct_language_if_not_logged_in (line 46) | public function test_correct_language_if_not_logged_in() method test_public_lang_autodetect_can_be_disabled (line 55) | public function test_public_lang_autodetect_can_be_disabled() method test_all_lang_files_loadable (line 65) | public function test_all_lang_files_loadable() method test_views_use_rtl_if_rtl_language_is_set (line 82) | public function test_views_use_rtl_if_rtl_language_is_set() method test_unknown_lang_does_not_break_app (line 91) | public function test_unknown_lang_does_not_break_app() method test_all_activity_types_have_activity_text (line 100) | public function test_all_activity_types_have_activity_text() FILE: tests/Meta/HelpTest.php class HelpTest (line 7) | class HelpTest extends TestCase method test_tinymce_help_shows_tiny_and_tiny_license_link (line 9) | public function test_tinymce_help_shows_tiny_and_tiny_license_link() method test_tiny_license_exists_where_expected (line 17) | public function test_tiny_license_exists_where_expected() method test_wysiwyg_help_shows_lexical_and_licenses_link (line 26) | public function test_wysiwyg_help_shows_lexical_and_licenses_link() FILE: tests/Meta/LicensesTest.php class LicensesTest (line 7) | class LicensesTest extends TestCase method test_licenses_endpoint (line 9) | public function test_licenses_endpoint() method test_licenses_linked_to_from_settings (line 20) | public function test_licenses_linked_to_from_settings() FILE: tests/Meta/OpenGraphTest.php class OpenGraphTest (line 11) | class OpenGraphTest extends TestCase method test_page_tags (line 13) | public function test_page_tags() method test_chapter_tags (line 24) | public function test_chapter_tags() method test_book_tags (line 35) | public function test_book_tags() method test_shelf_tags (line 55) | public function test_shelf_tags() method getOpenGraphTags (line 78) | protected function getOpenGraphTags(TestResponse $resp): array FILE: tests/Meta/OpensearchTest.php class OpensearchTest (line 7) | class OpensearchTest extends TestCase method test_opensearch_endpoint (line 9) | public function test_opensearch_endpoint() method test_opensearch_linked_to_from_home (line 33) | public function test_opensearch_linked_to_from_home() FILE: tests/Meta/PwaManifestTest.php class PwaManifestTest (line 7) | class PwaManifestTest extends TestCase method test_manifest_access_and_format (line 9) | public function test_manifest_access_and_format() method test_pwa_meta_tags_in_head (line 25) | public function test_pwa_meta_tags_in_head() method test_manifest_uses_configured_icons_if_existing (line 33) | public function test_manifest_uses_configured_icons_if_existing() method test_manifest_changes_to_user_preferences (line 62) | public function test_manifest_changes_to_user_preferences() FILE: tests/Meta/RobotsTest.php class RobotsTest (line 7) | class RobotsTest extends TestCase method test_robots_effected_by_public_status (line 9) | public function test_robots_effected_by_public_status() method test_robots_effected_by_setting (line 20) | public function test_robots_effected_by_setting() FILE: tests/Permissions/EntityOwnerChangeTest.php class EntityOwnerChangeTest (line 8) | class EntityOwnerChangeTest extends TestCase method test_changing_page_owner (line 10) | public function test_changing_page_owner() method test_changing_chapter_owner (line 19) | public function test_changing_chapter_owner() method test_changing_book_owner (line 28) | public function test_changing_book_owner() method test_changing_shelf_owner (line 37) | public function test_changing_shelf_owner() FILE: tests/Permissions/EntityPermissionsTest.php class EntityPermissionsTest (line 17) | class EntityPermissionsTest extends TestCase method setUp (line 22) | protected function setUp(): void method setRestrictionsForTestRoles (line 29) | protected function setRestrictionsForTestRoles(Entity $entity, array $... method test_bookshelf_view_restriction (line 38) | public function test_bookshelf_view_restriction() method test_bookshelf_update_restriction (line 57) | public function test_bookshelf_update_restriction() method test_bookshelf_delete_restriction (line 77) | public function test_bookshelf_delete_restriction() method test_book_view_restriction (line 97) | public function test_book_view_restriction() method test_book_create_restriction (line 127) | public function test_book_create_restriction() method test_book_update_restriction (line 173) | public function test_book_update_restriction() method test_book_delete_restriction (line 200) | public function test_book_delete_restriction() method test_chapter_view_restriction (line 226) | public function test_chapter_view_restriction() method test_chapter_create_restriction (line 245) | public function test_chapter_create_restriction() method test_chapter_update_restriction (line 273) | public function test_chapter_update_restriction() method test_chapter_delete_restriction (line 295) | public function test_chapter_delete_restriction() method test_page_view_restriction (line 318) | public function test_page_view_restriction() method test_page_update_restriction (line 334) | public function test_page_update_restriction() method test_page_delete_restriction (line 355) | public function test_page_delete_restriction() method entityRestrictionFormTest (line 374) | protected function entityRestrictionFormTest(string $model, string $ti... method test_bookshelf_restriction_form (line 397) | public function test_bookshelf_restriction_form() method test_book_restriction_form (line 402) | public function test_book_restriction_form() method test_chapter_restriction_form (line 407) | public function test_chapter_restriction_form() method test_page_restriction_form (line 412) | public function test_page_restriction_form() method test_shelf_create_permission_visible_with_notice (line 417) | public function test_shelf_create_permission_visible_with_notice() method test_restricted_pages_not_visible_in_book_navigation_on_pages (line 427) | public function test_restricted_pages_not_visible_in_book_navigation_o... method test_restricted_pages_not_visible_in_book_navigation_on_chapters (line 439) | public function test_restricted_pages_not_visible_in_book_navigation_o... method test_restricted_pages_not_visible_on_chapter_pages (line 450) | public function test_restricted_pages_not_visible_on_chapter_pages() method test_restricted_chapter_pages_not_visible_on_book_page (line 462) | public function test_restricted_chapter_pages_not_visible_on_book_page() method test_bookshelf_update_restriction_override (line 478) | public function test_bookshelf_update_restriction_override() method test_bookshelf_delete_restriction_override (line 496) | public function test_bookshelf_delete_restriction_override() method test_book_create_restriction_override (line 514) | public function test_book_create_restriction_override() method test_book_update_restriction_override (line 555) | public function test_book_update_restriction_override() method test_book_delete_restriction_override (line 581) | public function test_book_delete_restriction_override() method test_page_visible_if_has_permissions_when_book_not_visible (line 608) | public function test_page_visible_if_has_permissions_when_book_not_vis... method test_book_sort_view_permission (line 630) | public function test_book_sort_view_permission() method test_can_create_page_if_chapter_has_permissions_when_book_not_visible (line 646) | public function test_can_create_page_if_chapter_has_permissions_when_b... method test_access_to_item_prevented_if_inheritance_active_but_permission_prevented_via_role (line 668) | public function test_access_to_item_prevented_if_inheritance_active_bu... method test_access_to_item_allowed_if_inheritance_active_and_permission_prevented_via_role_but_allowed_via_parent (line 681) | public function test_access_to_item_allowed_if_inheritance_active_and_... method test_book_permissions_can_be_generated_without_error_if_child_chapter_is_in_recycle_bin (line 697) | public function test_book_permissions_can_be_generated_without_error_i... FILE: tests/Permissions/ExportPermissionsTest.php class ExportPermissionsTest (line 8) | class ExportPermissionsTest extends TestCase method test_page_content_without_view_access_hidden_on_chapter_export (line 10) | public function test_page_content_without_view_access_hidden_on_chapte... method test_page_content_without_view_access_hidden_on_book_export (line 38) | public function test_page_content_without_view_access_hidden_on_book_e... FILE: tests/Permissions/RolePermissionsTest.php class RolePermissionsTest (line 16) | class RolePermissionsTest extends TestCase method setUp (line 20) | protected function setUp(): void method test_manage_user_permission (line 26) | public function test_manage_user_permission() method test_manage_users_permission_shows_link_in_header_if_does_not_have_settings_manage_permision (line 33) | public function test_manage_users_permission_shows_link_in_header_if_d... method test_user_cannot_change_email_unless_they_have_manage_users_permission (line 43) | public function test_user_cannot_change_email_unless_they_have_manage_... method test_user_roles_manage_permission (line 80) | public function test_user_roles_manage_permission() method test_settings_manage_permission (line 91) | public function test_settings_manage_permission() method test_restrictions_manage_all_permission (line 103) | public function test_restrictions_manage_all_permission() method test_restrictions_manage_own_permission (line 119) | public function test_restrictions_manage_own_permission() method checkAccessPermission (line 153) | private function checkAccessPermission( method test_bookshelves_create_all_permissions (line 178) | public function test_bookshelves_create_all_permissions() method test_bookshelves_edit_own_permission (line 192) | public function test_bookshelves_edit_own_permission() method test_bookshelves_edit_all_permission (line 211) | public function test_bookshelves_edit_all_permission() method test_bookshelves_delete_own_permission (line 222) | public function test_bookshelves_delete_own_permission() method test_bookshelves_delete_all_permission (line 246) | public function test_bookshelves_delete_all_permission() method test_books_create_all_permissions (line 261) | public function test_books_create_all_permissions() method test_books_edit_own_permission (line 275) | public function test_books_edit_own_permission() method test_books_edit_all_permission (line 291) | public function test_books_edit_all_permission() method test_books_delete_own_permission (line 302) | public function test_books_delete_own_permission() method test_books_delete_all_permission (line 322) | public function test_books_delete_all_permission() method test_chapter_create_own_permissions (line 338) | public function test_chapter_create_own_permissions() method test_chapter_create_all_permissions (line 359) | public function test_chapter_create_all_permissions() method test_chapter_edit_own_permission (line 374) | public function test_chapter_edit_own_permission() method test_chapter_edit_all_permission (line 390) | public function test_chapter_edit_all_permission() method test_chapter_delete_own_permission (line 401) | public function test_chapter_delete_own_permission() method test_chapter_delete_all_permission (line 423) | public function test_chapter_delete_all_permission() method test_page_create_own_permissions (line 441) | public function test_page_create_own_permissions() method test_page_create_all_permissions (line 488) | public function test_page_create_all_permissions() method test_page_edit_own_permission (line 531) | public function test_page_edit_own_permission() method test_page_edit_all_permission (line 547) | public function test_page_edit_all_permission() method test_page_delete_own_permission (line 558) | public function test_page_delete_own_permission() method test_page_delete_all_permission (line 580) | public function test_page_delete_all_permission() method test_image_delete_own_permission (line 601) | public function test_image_delete_own_permission() method test_image_delete_all_permission (line 619) | public function test_image_delete_all_permission() method test_empty_state_actions_not_visible_without_permission (line 638) | public function test_empty_state_actions_not_visible_without_permission() method test_comment_create_permission (line 656) | public function test_comment_create_permission() method test_comment_update_own_permission (line 671) | public function test_comment_update_own_permission() method test_comment_update_all_permission (line 688) | public function test_comment_update_all_permission() method test_comment_delete_own_permission (line 705) | public function test_comment_delete_own_permission() method test_comment_delete_all_permission (line 724) | public function test_comment_delete_all_permission() method addComment (line 741) | private function addComment(Page $page): TestResponse method updateComment (line 746) | private function updateComment(Comment $comment): TestResponse method deleteComment (line 751) | private function deleteComment(Comment $comment): TestResponse FILE: tests/Permissions/Scenarios/EntityRolePermissionsTest.php class EntityRolePermissionsTest (line 5) | class EntityRolePermissionsTest extends PermissionScenarioTestCase method test_01_explicit_allow (line 7) | public function test_01_explicit_allow() method test_02_explicit_deny (line 16) | public function test_02_explicit_deny() method test_03_same_level_conflicting (line 25) | public function test_03_same_level_conflicting() method test_20_inherit_allow (line 38) | public function test_20_inherit_allow() method test_21_inherit_deny (line 50) | public function test_21_inherit_deny() method test_22_same_level_conflict_inherit (line 62) | public function test_22_same_level_conflict_inherit() method test_30_child_inherit_override_allow (line 76) | public function test_30_child_inherit_override_allow() method test_31_child_inherit_override_deny (line 89) | public function test_31_child_inherit_override_deny() method test_40_multi_role_inherit_conflict_override_deny (line 102) | public function test_40_multi_role_inherit_conflict_override_deny() method test_41_multi_role_inherit_conflict_retain_allow (line 116) | public function test_41_multi_role_inherit_conflict_retain_allow() method test_50_role_override_allow (line 130) | public function test_50_role_override_allow() method test_51_role_override_deny (line 139) | public function test_51_role_override_deny() method test_60_inherited_role_override_allow (line 148) | public function test_60_inherited_role_override_allow() method test_61_inherited_role_override_deny (line 158) | public function test_61_inherited_role_override_deny() method test_62_inherited_role_override_deny_on_own (line 168) | public function test_62_inherited_role_override_deny_on_own() method test_70_multi_role_inheriting_deny (line 179) | public function test_70_multi_role_inheriting_deny() method test_71_multi_role_inheriting_deny_on_own (line 190) | public function test_71_multi_role_inheriting_deny_on_own() method test_75_multi_role_inherited_deny_via_parent (line 203) | public function test_75_multi_role_inherited_deny_via_parent() method test_76_multi_role_inherited_deny_via_parent_on_own (line 215) | public function test_76_multi_role_inherited_deny_via_parent_on_own() method test_80_fallback_override_allow (line 228) | public function test_80_fallback_override_allow() method test_81_fallback_override_deny (line 238) | public function test_81_fallback_override_deny() method test_84_fallback_override_allow_multi_role (line 249) | public function test_84_fallback_override_allow_multi_role() method test_85_fallback_override_deny_multi_role (line 261) | public function test_85_fallback_override_deny_multi_role() method test_86_fallback_override_allow_inherit (line 273) | public function test_86_fallback_override_allow_inherit() method test_87_fallback_override_deny_inherit (line 285) | public function test_87_fallback_override_deny_inherit() method test_88_fallback_override_allow_multi_role_inherit (line 297) | public function test_88_fallback_override_allow_multi_role_inherit() method test_89_fallback_override_deny_multi_role_inherit (line 310) | public function test_89_fallback_override_deny_multi_role_inherit() method test_90_fallback_overrides_parent_entity_role_deny (line 323) | public function test_90_fallback_overrides_parent_entity_role_deny() method test_91_fallback_overrides_parent_entity_role_inherit (line 336) | public function test_91_fallback_overrides_parent_entity_role_inherit() FILE: tests/Permissions/Scenarios/PermissionScenarioTestCase.php class PermissionScenarioTestCase (line 11) | class PermissionScenarioTestCase extends TestCase method assertVisibleToUser (line 13) | protected function assertVisibleToUser(Entity $entity, User $user) method assertNotVisibleToUser (line 26) | protected function assertNotVisibleToUser(Entity $entity, User $user) FILE: tests/Permissions/Scenarios/RoleContentPermissionsTest.php class RoleContentPermissionsTest (line 5) | class RoleContentPermissionsTest extends PermissionScenarioTestCase method test_01_allow (line 7) | public function test_01_allow() method test_02_deny (line 15) | public function test_02_deny() method test_10_allow_on_own_with_own (line 23) | public function test_10_allow_on_own_with_own() method test_11_deny_on_other_with_own (line 32) | public function test_11_deny_on_other_with_own() method test_20_multiple_role_conflicting_all (line 41) | public function test_20_multiple_role_conflicting_all() method test_21_multiple_role_conflicting_own (line 50) | public function test_21_multiple_role_conflicting_own() FILE: tests/PublicActionTest.php class PublicActionTest (line 13) | class PublicActionTest extends TestCase method test_app_not_public (line 15) | public function test_app_not_public() method test_login_link_visible (line 26) | public function test_login_link_visible() method test_register_link_visible_when_enabled (line 33) | public function test_register_link_visible_when_enabled() method test_books_viewable (line 46) | public function test_books_viewable() method test_chapters_viewable (line 63) | public function test_chapters_viewable() method test_public_page_creation (line 82) | public function test_public_page_creation() method test_content_not_listed_on_404_for_public_users (line 115) | public function test_content_not_listed_on_404_for_public_users() method test_default_favicon_file_created_upon_access (line 131) | public function test_default_favicon_file_created_upon_access() method test_public_view_then_login_redirects_to_previous_content (line 143) | public function test_public_view_then_login_redirects_to_previous_cont... method test_access_hidden_content_then_login_redirects_to_intended_content (line 155) | public function test_access_hidden_content_then_login_redirects_to_int... method test_public_view_can_take_on_other_roles (line 170) | public function test_public_view_can_take_on_other_roles() method test_public_user_cannot_view_or_update_their_profile (line 184) | public function test_public_user_cannot_view_or_update_their_profile() FILE: tests/References/CrossLinkParserTest.php class CrossLinkParserTest (line 8) | class CrossLinkParserTest extends TestCase method test_instance_with_entity_resolvers_matches_entity_links (line 10) | public function test_instance_with_entity_resolvers_matches_entity_lin... method test_similar_page_and_book_reference_links_dont_conflict (line 40) | public function test_similar_page_and_book_reference_links_dont_confli... FILE: tests/References/ReferencesTest.php class ReferencesTest (line 11) | class ReferencesTest extends TestCase method test_references_created_on_page_update (line 13) | public function test_references_created_on_page_update() method test_references_created_on_book_chapter_bookshelf_update (line 33) | public function test_references_created_on_book_chapter_bookshelf_upda... method test_references_deleted_on_page_delete (line 56) | public function test_references_deleted_on_page_delete() method test_references_from_deleted_on_book_chapter_shelf_delete (line 74) | public function test_references_from_deleted_on_book_chapter_shelf_del... method test_references_to_count_visible_on_entity_show_view (line 93) | public function test_references_to_count_visible_on_entity_show_view() method test_references_to_visible_on_references_page (line 114) | public function test_references_to_visible_on_references_page() method test_reference_not_visible_if_view_permission_does_not_permit (line 130) | public function test_reference_not_visible_if_view_permission_does_not... method test_reference_page_shows_empty_state_with_no_references (line 142) | public function test_reference_page_shows_empty_state_with_no_referenc... method test_pages_leading_to_entity_updated_on_url_change (line 151) | public function test_pages_leading_to_entity_updated_on_url_change() method test_pages_linking_to_other_page_updated_on_parent_book_url_change (line 177) | public function test_pages_linking_to_other_page_updated_on_parent_boo... method test_pages_linking_to_chapter_updated_on_parent_book_url_change (line 199) | public function test_pages_linking_to_chapter_updated_on_parent_book_u... method test_markdown_links_leading_to_entity_updated_on_url_change (line 221) | public function test_markdown_links_leading_to_entity_updated_on_url_c... method test_description_links_from_book_chapter_shelf_updated_on_url_change (line 248) | public function test_description_links_from_book_chapter_shelf_updated... method test_reference_from_deleted_item_does_not_count_or_show_in_references_page (line 274) | public function test_reference_from_deleted_item_does_not_count_or_sho... method createReference (line 298) | protected function createReference(Model $from, Model $to): void FILE: tests/Search/EntitySearchTest.php class EntitySearchTest (line 9) | class EntitySearchTest extends TestCase method test_page_search (line 11) | public function test_page_search() method test_bookshelf_search (line 21) | public function test_bookshelf_search() method test_search_shows_pagination (line 30) | public function test_search_shows_pagination() method test_pagination_considers_sub_path_url_handling (line 36) | public function test_pagination_considers_sub_path_url_handling() method test_invalid_page_search (line 44) | public function test_invalid_page_search() method test_empty_search_shows_search_page (line 52) | public function test_empty_search_shows_search_page() method test_searching_accents_and_small_terms (line 58) | public function test_searching_accents_and_small_terms() method test_book_search (line 70) | public function test_book_search() method test_chapter_search (line 83) | public function test_chapter_search() method test_tag_search (line 92) | public function test_tag_search() method test_exact_searches (line 122) | public function test_exact_searches() method test_negated_searches (line 133) | public function test_negated_searches() method test_search_terms_with_delimiters_are_converted_to_exact_matches (line 159) | public function test_search_terms_with_delimiters_are_converted_to_exa... method test_search_filters (line 171) | public function test_search_filters() method test_entity_selector_search (line 232) | public function test_entity_selector_search() method test_entity_selector_search_shows_breadcrumbs (line 251) | public function test_entity_selector_search_shows_breadcrumbs() method test_entity_selector_shows_breadcrumbs_on_default_view (line 267) | public function test_entity_selector_shows_breadcrumbs_on_default_view() method test_entity_selector_search_reflects_items_without_permission (line 278) | public function test_entity_selector_search_reflects_items_without_per... method test_entity_template_selector_search (line 293) | public function test_entity_template_selector_search() method test_search_works_on_updated_page_content (line 326) | public function test_search_works_on_updated_page_content() method test_search_ranks_common_words_lower (line 342) | public function test_search_ranks_common_words_lower() method test_matching_terms_in_search_results_are_highlighted (line 360) | public function test_matching_terms_in_search_results_are_highlighted() method test_match_highlighting_works_with_multibyte_content (line 378) | public function test_match_highlighting_works_with_multibyte_content() method test_match_highlighting_is_efficient_with_large_frequency_in_content (line 389) | public function test_match_highlighting_is_efficient_with_large_freque... method test_html_entities_in_item_details_remains_escaped_in_search_results (line 404) | public function test_html_entities_in_item_details_remains_escaped_in_... method test_words_adjacent_to_lines_breaks_can_be_matched_with_normal_terms (line 413) | public function test_words_adjacent_to_lines_breaks_can_be_matched_wit... method test_backslashes_can_be_searched_upon (line 424) | public function test_backslashes_can_be_searched_upon() method test_searches_with_terms_without_controls_includes_them_in_extras (line 444) | public function test_searches_with_terms_without_controls_includes_the... method test_negated_searches_dont_show_in_inputs (line 450) | public function test_negated_searches_dont_show_in_inputs() method test_searches_with_user_filters_using_me_adds_them_into_advanced_search_form (line 458) | public function test_searches_with_user_filters_using_me_adds_them_int... method test_search_suggestion_endpoint (line 465) | public function test_search_suggestion_endpoint() FILE: tests/Search/SearchIndexingTest.php class SearchIndexingTest (line 7) | class SearchIndexingTest extends TestCase method test_terms_in_headers_have_an_adjusted_index_score (line 9) | public function test_terms_in_headers_have_an_adjusted_index_score() method test_indexing_works_as_expected_for_page_with_lots_of_terms (line 34) | public function test_indexing_works_as_expected_for_page_with_lots_of_... method test_name_and_content_terms_are_merged_to_single_score (line 53) | public function test_name_and_content_terms_are_merged_to_single_score() method test_tag_names_and_values_are_indexed_for_search (line 65) | public function test_tag_names_and_values_are_indexed_for_search() method test_terms_containing_guillemets_handled (line 78) | public function test_terms_containing_guillemets_handled() method test_terms_containing_punctuation_within_retain_original_form_and_split_form_in_index (line 94) | public function test_terms_containing_punctuation_within_retain_origin... method test_non_breaking_spaces_handled_as_spaces (line 110) | public function test_non_breaking_spaces_handled_as_spaces() FILE: tests/Search/SearchOptionsTest.php class SearchOptionsTest (line 14) | class SearchOptionsTest extends TestCase method test_from_string_parses_a_search_string_properly (line 16) | public function test_from_string_parses_a_search_string_properly() method test_from_string_parses_negations (line 26) | public function test_from_string_parses_negations() method test_from_string_properly_parses_escaped_quotes (line 36) | public function test_from_string_properly_parses_escaped_quotes() method test_to_string_includes_all_items_in_the_correct_format (line 48) | public function test_to_string_includes_all_items_in_the_correct_format() method test_to_string_handles_negations_as_expected (line 66) | public function test_to_string_handles_negations_as_expected() method test_to_string_escapes_as_expected (line 83) | public function test_to_string_escapes_as_expected() method test_correct_filter_values_are_set_from_string (line 92) | public function test_correct_filter_values_are_set_from_string() method test_it_cannot_parse_out_empty_exacts (line 102) | public function test_it_cannot_parse_out_empty_exacts() method test_from_request_properly_parses_exacts_from_search_terms (line 110) | public function test_from_request_properly_parses_exacts_from_search_t... method test_from_request_properly_parses_provided_types (line 122) | public function test_from_request_properly_parses_provided_types() method test_from_request_properly_parses_out_extras_as_string (line 135) | public function test_from_request_properly_parses_out_extras_as_string() method test_from_string_results_are_count_limited_and_larger_for_logged_in_users (line 152) | public function test_from_string_results_are_count_limited_and_larger_... method test_from_request_results_are_count_limited_and_larger_for_logged_in_users (line 177) | public function test_from_request_results_are_count_limited_and_larger... FILE: tests/Search/SiblingSearchTest.php class SiblingSearchTest (line 9) | class SiblingSearchTest extends TestCase method test_sibling_search_for_pages (line 11) | public function test_sibling_search_for_pages() method test_sibling_search_for_pages_without_chapter (line 26) | public function test_sibling_search_for_pages_without_chapter() method test_sibling_search_for_chapters (line 41) | public function test_sibling_search_for_chapters() method test_sibling_search_for_books (line 56) | public function test_sibling_search_for_books() method test_sibling_search_for_shelves (line 69) | public function test_sibling_search_for_shelves() method test_sibling_search_for_books_provides_results_in_alphabetical_order (line 82) | public function test_sibling_search_for_books_provides_results_in_alph... method test_sibling_search_for_shelves_provides_results_in_alphabetical_order (line 100) | public function test_sibling_search_for_shelves_provides_results_in_al... FILE: tests/SecurityHeaderTest.php class SecurityHeaderTest (line 8) | class SecurityHeaderTest extends TestCase method test_cookies_samesite_lax_by_default (line 10) | public function test_cookies_samesite_lax_by_default() method test_cookies_samesite_none_when_iframe_hosts_set (line 18) | public function test_cookies_samesite_none_when_iframe_hosts_set() method test_secure_cookies_controlled_by_app_url (line 28) | public function test_secure_cookies_controlled_by_app_url() method test_iframe_csp_self_only_by_default (line 45) | public function test_iframe_csp_self_only_by_default() method test_iframe_csp_includes_extra_hosts_if_configured (line 53) | public function test_iframe_csp_includes_extra_hosts_if_configured() method test_script_csp_set_on_responses (line 64) | public function test_script_csp_set_on_responses() method test_script_csp_nonce_matches_nonce_used_in_custom_head (line 72) | public function test_script_csp_nonce_matches_nonce_used_in_custom_head() method test_script_csp_nonce_changes_per_request (line 83) | public function test_script_csp_nonce_changes_per_request() method test_content_filtering_config_controls_csp_script_headers (line 96) | public function test_content_filtering_config_controls_csp_script_head... method test_object_src_csp_header_set (line 109) | public function test_object_src_csp_header_set() method test_base_uri_csp_header_set (line 116) | public function test_base_uri_csp_header_set() method test_frame_src_csp_header_set (line 123) | public function test_frame_src_csp_header_set() method test_frame_src_csp_header_has_drawio_host_added (line 130) | public function test_frame_src_csp_header_has_drawio_host_added() method test_frame_src_csp_header_drawio_host_includes_port_if_existing (line 142) | public function test_frame_src_csp_header_drawio_host_includes_port_if... method test_cache_control_headers_are_set_on_responses (line 154) | public function test_cache_control_headers_are_set_on_responses() method getCspHeader (line 171) | protected function getCspHeader(TestResponse $resp, string $type): string FILE: tests/SessionTest.php class SessionTest (line 5) | class SessionTest extends TestCase method test_secure_images_not_tracked_in_session_history (line 7) | public function test_secure_images_not_tracked_in_session_history() method test_pwa_manifest_is_not_tracked_in_session_history (line 30) | public function test_pwa_manifest_is_not_tracked_in_session_history() method test_dist_dir_access_is_not_tracked_in_session_history (line 38) | public function test_dist_dir_access_is_not_tracked_in_session_history() method test_opensearch_is_not_tracked_in_session_history (line 46) | public function test_opensearch_is_not_tracked_in_session_history() FILE: tests/Settings/CustomHeadContentTest.php class CustomHeadContentTest (line 8) | class CustomHeadContentTest extends TestCase method test_configured_content_shows_on_pages (line 10) | public function test_configured_content_shows_on_pages() method test_content_wrapped_in_specific_html_comments (line 17) | public function test_content_wrapped_in_specific_html_comments() method test_configured_content_does_not_show_on_settings_page (line 26) | public function test_configured_content_does_not_show_on_settings_page() method test_divs_in_js_preserved_in_configured_content (line 33) | public function test_divs_in_js_preserved_in_configured_content() method test_nonce_application_handles_edge_cases (line 40) | public function test_nonce_application_handles_edge_cases() FILE: tests/Settings/FooterLinksTest.php class FooterLinksTest (line 7) | class FooterLinksTest extends TestCase method test_saving_setting (line 9) | public function test_saving_setting() method test_set_options_visible_on_settings_page (line 26) | public function test_set_options_visible_on_settings_page() method test_footer_links_show_on_pages (line 40) | public function test_footer_links_show_on_pages() method test_using_translation_system_for_labels (line 54) | public function test_using_translation_system_for_labels() FILE: tests/Settings/PageListLimitsTest.php class PageListLimitsTest (line 9) | class PageListLimitsTest extends TestCase method test_saving_setting_and_loading (line 11) | public function test_saving_setting_and_loading() method test_invalid_counts_will_use_default_when_fetched_as_an_integer (line 32) | public function test_invalid_counts_will_use_default_when_fetched_as_a... method test_shelf_count_is_used_on_shelves_view (line 41) | public function test_shelf_count_is_used_on_shelves_view() method test_book_count_is_used_on_books_view (line 55) | public function test_book_count_is_used_on_books_view() method test_search_count_is_used_on_search_view (line 69) | public function test_search_count_is_used_on_search_view() FILE: tests/Settings/RecycleBinTest.php class RecycleBinTest (line 13) | class RecycleBinTest extends TestCase method test_recycle_bin_routes_permissions (line 15) | public function test_recycle_bin_routes_permissions() method test_recycle_bin_view (line 56) | public function test_recycle_bin_view() method test_recycle_bin_empty (line 73) | public function test_recycle_bin_empty() method test_entity_restore (line 98) | public function test_entity_restore() method test_permanent_delete (line 119) | public function test_permanent_delete() method test_permanent_delete_for_each_type (line 141) | public function test_permanent_delete_for_each_type() method test_permanent_entity_delete_updates_existing_activity_with_entity_name (line 154) | public function test_permanent_entity_delete_updates_existing_activity... method test_permanent_book_delete_removes_shelf_relation_data (line 182) | public function test_permanent_book_delete_removes_shelf_relation_data() method test_permanent_shelf_delete_removes_book_relation_data (line 196) | public function test_permanent_shelf_delete_removes_book_relation_data() method test_auto_clear_functionality_works (line 210) | public function test_auto_clear_functionality_works() method test_auto_clear_functionality_with_negative_time_keeps_forever (line 227) | public function test_auto_clear_functionality_with_negative_time_keeps... method test_auto_clear_functionality_with_zero_time_deletes_instantly (line 243) | public function test_auto_clear_functionality_with_zero_time_deletes_i... method test_restore_flow_when_restoring_nested_delete_first (line 253) | public function test_restore_flow_when_restoring_nested_delete_first() method test_restore_page_shows_link_to_parent_restore_if_parent_also_deleted (line 283) | public function test_restore_page_shows_link_to_parent_restore_if_pare... FILE: tests/Settings/RegenerateReferencesTest.php class RegenerateReferencesTest (line 9) | class RegenerateReferencesTest extends TestCase method test_option_visible_on_maintenance_page (line 11) | public function test_option_visible_on_maintenance_page() method test_action_runs_reference_regen (line 21) | public function test_action_runs_reference_regen() method test_settings_manage_permission_required (line 33) | public function test_settings_manage_permission_required() method test_action_failed_shown_as_error_notification (line 45) | public function test_action_failed_shown_as_error_notification() FILE: tests/Settings/SettingsTest.php class SettingsTest (line 7) | class SettingsTest extends TestCase method test_admin_can_see_settings (line 9) | public function test_admin_can_see_settings() method test_settings_endpoint_redirects_to_settings_view (line 14) | public function test_settings_endpoint_redirects_to_settings_view() method test_settings_category_links_work_as_expected (line 25) | public function test_settings_category_links_work_as_expected() method test_not_found_setting_category_throws_404 (line 41) | public function test_not_found_setting_category_throws_404() method test_updating_and_removing_app_icon (line 49) | public function test_updating_and_removing_app_icon() method test_both_light_and_dark_colors_are_used_in_the_base_view (line 105) | public function test_both_light_and_dark_colors_are_used_in_the_base_v... FILE: tests/Settings/TestEmailTest.php class TestEmailTest (line 10) | class TestEmailTest extends TestCase method test_a_send_test_button_shows (line 12) | public function test_a_send_test_button_shows() method test_send_test_email_endpoint_sends_email_and_redirects_user_and_shows_notification (line 20) | public function test_send_test_email_endpoint_sends_email_and_redirect... method test_send_test_email_failure_displays_error_notification (line 32) | public function test_send_test_email_failure_displays_error_notificati... method test_send_test_email_requires_settings_manage_permission (line 50) | public function test_send_test_email_requires_settings_manage_permissi... FILE: tests/Sorting/BookSortTest.php class BookSortTest (line 11) | class BookSortTest extends TestCase method test_book_sort_page_shows (line 13) | public function test_book_sort_page_shows() method test_drafts_do_not_show_up (line 25) | public function test_drafts_do_not_show_up() method test_book_sort (line 39) | public function test_book_sort() method test_book_sort_makes_no_changes_if_new_chapter_does_not_align_with_new_book (line 82) | public function test_book_sort_makes_no_changes_if_new_chapter_does_no... method test_book_sort_makes_no_changes_if_no_view_permissions_on_new_chapter (line 101) | public function test_book_sort_makes_no_changes_if_no_view_permissions... method test_book_sort_makes_no_changes_if_no_view_permissions_on_new_book (line 122) | public function test_book_sort_makes_no_changes_if_no_view_permissions... method test_book_sort_makes_no_changes_if_no_update_or_create_permissions_on_new_chapter (line 144) | public function test_book_sort_makes_no_changes_if_no_update_or_create... method test_book_sort_makes_no_changes_if_no_update_permissions_on_moved_item (line 166) | public function test_book_sort_makes_no_changes_if_no_update_permissio... method test_book_sort_makes_no_changes_if_no_delete_permissions_on_moved_item (line 188) | public function test_book_sort_makes_no_changes_if_no_delete_permissio... method test_book_sort_does_not_change_timestamps_on_just_order_changes (line 210) | public function test_book_sort_does_not_change_timestamps_on_just_orde... method test_book_sort_item_returns_book_content (line 236) | public function test_book_sort_item_returns_book_content() method test_book_sort_item_shows_auto_sort_status (line 250) | public function test_book_sort_item_shows_auto_sort_status() method test_auto_sort_options_shown_on_sort_page (line 265) | public function test_auto_sort_options_shown_on_sort_page() method test_auto_sort_option_submit_saves_to_book (line 274) | public function test_auto_sort_option_submit_saves_to_book() method test_pages_in_book_show_sorted_by_priority (line 297) | public function test_pages_in_book_show_sorted_by_priority() FILE: tests/Sorting/MoveTest.php class MoveTest (line 10) | class MoveTest extends TestCase method test_page_move_into_book (line 12) | public function test_page_move_into_book() method test_page_move_into_chapter (line 34) | public function test_page_move_into_chapter() method test_page_move_from_chapter_to_book (line 53) | public function test_page_move_from_chapter_to_book() method test_page_move_requires_create_permissions_on_parent (line 72) | public function test_page_move_requires_create_permissions_on_parent() method test_page_move_requires_delete_permissions (line 97) | public function test_page_move_requires_delete_permissions() method test_chapter_move (line 124) | public function test_chapter_move() method test_chapter_move_requires_delete_permissions (line 152) | public function test_chapter_move_requires_delete_permissions() method test_chapter_move_requires_create_permissions_in_new_book (line 179) | public function test_chapter_move_requires_create_permissions_in_new_b... method test_chapter_move_changes_book_for_deleted_pages_within (line 204) | public function test_chapter_move_changes_book_for_deleted_pages_within() FILE: tests/Sorting/SortRuleTest.php class SortRuleTest (line 12) | class SortRuleTest extends TestCase method test_manage_settings_permission_required (line 16) | public function test_manage_settings_permission_required() method test_create_flow (line 43) | public function test_create_flow() method test_listing_in_settings (line 60) | public function test_listing_in_settings() method test_update_flow (line 75) | public function test_update_flow() method test_update_triggers_resort_on_assigned_books (line 92) | public function test_update_triggers_resort_on_assigned_books() method test_delete_flow (line 109) | public function test_delete_flow() method test_delete_requires_confirmation_if_books_assigned (line 123) | public function test_delete_requires_confirmation_if_books_assigned() method test_page_create_triggers_book_sort (line 148) | public function test_page_create_triggers_book_sort() method test_auto_book_sort_does_not_touch_timestamps (line 169) | public function test_auto_book_sort_does_not_touch_timestamps() method test_name_alphabetical_ordering (line 190) | public function test_name_alphabetical_ordering() method test_name_numeric_ordering (line 228) | public function test_name_numeric_ordering() method test_each_sort_rule_operation_has_a_comparison_function (line 262) | public function test_each_sort_rule_operation_has_a_comparison_function() FILE: tests/StatusTest.php class StatusTest (line 12) | class StatusTest extends TestCase method test_returns_json_with_expected_results (line 14) | public function test_returns_json_with_expected_results() method test_returns_500_status_and_false_on_db_error (line 25) | public function test_returns_500_status_and_false_on_db_error() method test_returns_500_status_and_false_on_wrong_cache_return (line 36) | public function test_returns_500_status_and_false_on_wrong_cache_return() method test_returns_500_status_and_false_on_wrong_session_return (line 49) | public function test_returns_500_status_and_false_on_wrong_session_ret... FILE: tests/TestCase.php class TestCase (line 29) | abstract class TestCase extends BaseTestCase method setUp (line 40) | protected function setUp(): void method createApplication (line 64) | public function createApplication() method asAdmin (line 77) | public function asAdmin() method asEditor (line 85) | public function asEditor() method asViewer (line 93) | public function asViewer() method setSettings (line 101) | protected function setSettings(array $settingsArray): void method mockHttpClient (line 112) | protected function mockHttpClient(array $responses = []): HttpClientHi... method runWithEnv (line 123) | protected function runWithEnv(array $valuesByKey, callable $callback, ... method usingThemeFolder (line 161) | protected function usingThemeFolder(callable $callback): void method assertArrayMapIncludes (line 182) | protected function assertArrayMapIncludes(array $mapToInclude, array $... method assertPermissionError (line 200) | protected function assertPermissionError($response) method assertNotPermissionError (line 208) | protected function assertNotPermissionError($response) method isPermissionError (line 216) | private function isPermissionError($response): bool method assertSessionError (line 231) | protected function assertSessionError(string $message) method assertSessionHas (line 240) | protected function assertSessionHas(string $key): self method assertNotificationContains (line 247) | protected function assertNotificationContains(\Illuminate\Testing\Test... method withTestLogger (line 256) | protected function withTestLogger(): TestHandler method assertActivityExists (line 274) | protected function assertActivityExists(string $type, ?Entity $entity ... method assertDatabaseHasEntityData (line 293) | protected function assertDatabaseHasEntityData(string $type, array $da... FILE: tests/Theme/LogicalThemeEventsTest.php class LogicalThemeEventsTest (line 19) | class LogicalThemeEventsTest extends TestCase method test_commonmark_environment_configure (line 21) | public function test_commonmark_environment_configure() method test_web_middleware_before (line 39) | public function test_web_middleware_before() method test_web_middleware_before_return_val_used_as_response (line 56) | public function test_web_middleware_before_return_val_used_as_response() method test_web_middleware_after (line 68) | public function test_web_middleware_after() method test_web_middleware_after_return_val_used_as_response (line 89) | public function test_web_middleware_after_return_val_used_as_response() method test_auth_login_standard (line 102) | public function test_auth_login_standard() method test_auth_register_standard (line 117) | public function test_auth_register_standard() method test_auth_pre_register (line 134) | public function test_auth_pre_register() method test_auth_pre_register_with_false_return_blocks_registration (line 156) | public function test_auth_pre_register_with_false_return_blocks_regist... method test_webhook_call_before (line 171) | public function test_webhook_call_before() method test_activity_logged (line 201) | public function test_activity_logged() method test_page_content_pre_store_fires_on_page_save (line 218) | public function test_page_content_pre_store_fires_on_page_save() method test_page_content_pre_store_does_not_change_content_if_nothing_returned (line 241) | public function test_page_content_pre_store_does_not_change_content_if... method test_page_content_post_render_fires_on_page_view (line 253) | public function test_page_content_post_render_fires_on_page_view() method test_page_content_post_render_returns_original_content_if_no_return (line 275) | public function test_page_content_post_render_returns_original_content... method test_page_include_parse (line 294) | public function test_page_include_parse() method test_routes_register_web_and_web_auth (line 325) | public function test_routes_register_web_and_web_auth() method test_register_views_to_insert_views_before_and_after (line 359) | public function test_register_views_to_insert_views_before_and_after() FILE: tests/Theme/LogicalThemeTest.php class LogicalThemeTest (line 11) | class LogicalThemeTest extends TestCase method test_theme_functions_file_used_and_app_boot_event_runs (line 13) | public function test_theme_functions_file_used_and_app_boot_event_runs() method test_theme_functions_loads_errors_are_caught_and_logged (line 25) | public function test_theme_functions_loads_errors_are_caught_and_logged() method test_add_social_driver (line 38) | public function test_add_social_driver() method test_add_social_driver_uses_name_in_config_if_given (line 53) | public function test_add_social_driver_uses_name_in_config_if_given() method test_add_social_driver_allows_a_configure_for_redirect_callback_to_be_passed (line 66) | public function test_add_social_driver_allows_a_configure_for_redirect... method test_register_command_allows_provided_command_to_be_usable_via_artisan (line 86) | public function test_register_command_allows_provided_command_to_be_us... class MyCustomCommand (line 97) | class MyCustomCommand extends Command method handle (line 101) | public function handle() FILE: tests/Theme/ThemeModuleTest.php class ThemeModuleTest (line 9) | class ThemeModuleTest extends TestCase method test_modules_loaded_on_theme_load (line 11) | public function test_modules_loaded_on_theme_load() method test_module_not_loaded_if_no_bookstack_module_json (line 42) | public function test_module_not_loaded_if_no_bookstack_module_json() method test_language_text_overridable_via_module (line 54) | public function test_language_text_overridable_via_module() method test_language_files_merge_with_theme_files_with_theme_taking_precedence (line 66) | public function test_language_files_merge_with_theme_files_with_theme_... method test_view_files_overridable_from_module (line 85) | public function test_view_files_overridable_from_module() method test_theme_view_files_take_precedence_over_module_view_files (line 96) | public function test_theme_view_files_take_precedence_over_module_view... method test_theme_and_modules_views_can_be_used_at_the_same_time (line 114) | public function test_theme_and_modules_views_can_be_used_at_the_same_t... method test_icons_can_be_overridden_from_module (line 132) | public function test_icons_can_be_overridden_from_module() method test_theme_icons_take_precedence_over_module_icons (line 144) | public function test_theme_icons_take_precedence_over_module_icons() method test_public_folder_can_be_provided_from_module (line 163) | public function test_public_folder_can_be_provided_from_module() method test_theme_public_files_take_precedence_over_modules (line 177) | public function test_theme_public_files_take_precedence_over_modules() method test_logical_functions_file_loaded_from_module_and_it_runs_alongside_theme_functions (line 196) | public function test_logical_functions_file_loaded_from_module_and_it_... method test_module_can_use_theme_view_render_functions (line 211) | public function test_module_can_use_theme_view_render_functions() method test_module_can_provide_head_content (line 224) | public function test_module_can_provide_head_content() method usingModuleFolder (line 241) | protected function usingModuleFolder(callable $callback): void FILE: tests/Theme/VisualThemeTest.php class VisualThemeTest (line 8) | class VisualThemeTest extends TestCase method test_translation_text_can_be_overridden_via_theme (line 10) | public function test_translation_text_can_be_overridden_via_theme() method test_custom_settings_category_page_can_be_added_via_view_file (line 26) | public function test_custom_settings_category_page_can_be_added_via_vi... method test_base_body_start_and_end_template_files_can_be_used (line 39) | public function test_base_body_start_and_end_template_files_can_be_used() method test_export_body_start_and_end_template_files_can_be_used (line 56) | public function test_export_body_start_and_end_template_files_can_be_u... method test_login_and_register_message_template_files_can_be_used (line 74) | public function test_login_and_register_message_template_files_can_be_... method test_header_links_start_template_file_can_be_used (line 91) | public function test_header_links_start_template_file_can_be_used() method test_public_folder_contents_accessible_via_route (line 105) | public function test_public_folder_contents_accessible_via_route() FILE: tests/Unit/ConfigTest.php class ConfigTest (line 15) | class ConfigTest extends TestCase method test_filesystem_images_falls_back_to_storage_type_var (line 17) | public function test_filesystem_images_falls_back_to_storage_type_var() method test_filesystem_attachments_falls_back_to_storage_type_var (line 25) | public function test_filesystem_attachments_falls_back_to_storage_type... method test_app_url_blank_if_old_default_value (line 33) | public function test_app_url_blank_if_old_default_value() method test_errorlog_plain_webserver_channel (line 41) | public function test_errorlog_plain_webserver_channel() method test_session_cookie_uses_sub_path_from_app_url (line 63) | public function test_session_cookie_uses_sub_path_from_app_url() method test_saml2_idp_authn_context_string_parsed_as_space_separated_array (line 71) | public function test_saml2_idp_authn_context_string_parsed_as_space_se... method test_dompdf_remote_fetching_controlled_by_allow_untrusted_server_fetching_false (line 81) | public function test_dompdf_remote_fetching_controlled_by_allow_untrus... method test_dompdf_paper_size_options_are_limited (line 87) | public function test_dompdf_paper_size_options_are_limited() method test_snappy_paper_size_options_are_limited (line 94) | public function test_snappy_paper_size_options_are_limited() method test_sendmail_command_is_configurable (line 101) | public function test_sendmail_command_is_configurable() method test_mail_disable_ssl_verification_alters_mailer (line 106) | public function test_mail_disable_ssl_verification_alters_mailer() method test_app_url_changes_smtp_ehlo_host_on_mailer (line 125) | public function test_app_url_changes_smtp_ehlo_host_on_mailer() method test_non_null_mail_encryption_options_enforce_smtp_scheme (line 146) | public function test_non_null_mail_encryption_options_enforce_smtp_sch... method test_smtp_scheme_and_certain_port_forces_tls_usage (line 153) | public function test_smtp_scheme_and_certain_port_forces_tls_usage() method test_mysql_host_parsed_as_expected (line 173) | public function test_mysql_host_parsed_as_expected() method test_content_filtering_defaults_to_enabled (line 194) | public function test_content_filtering_defaults_to_enabled() method test_content_filtering_can_be_disabled (line 201) | public function test_content_filtering_can_be_disabled() method test_allow_content_scripts_disables_content_filtering (line 208) | public function test_allow_content_scripts_disables_content_filtering() method checkEnvConfigResult (line 220) | protected function checkEnvConfigResult(string $envName, ?string $envV... FILE: tests/Unit/FrameworkAssumptionTest.php class FrameworkAssumptionTest (line 14) | class FrameworkAssumptionTest extends TestCase method test_scopes_error_if_not_existing (line 16) | public function test_scopes_error_if_not_existing() method test_scopes_applies_upon_existing (line 23) | public function test_scopes_applies_upon_existing() FILE: tests/Unit/IpFormatterTest.php class IpFormatterTest (line 8) | class IpFormatterTest extends TestCase method test_ips_formatted_as_expected (line 10) | public function test_ips_formatted_as_expected() method test_shortened_ipv6_addresses_expands_as_expected (line 26) | public function test_shortened_ipv6_addresses_expands_as_expected() FILE: tests/Unit/OidcIdTokenTest.php class OidcIdTokenTest (line 10) | class OidcIdTokenTest extends TestCase method test_valid_token_passes_validation (line 12) | public function test_valid_token_passes_validation() method test_get_claim_returns_value_if_existing (line 21) | public function test_get_claim_returns_value_if_existing() method test_get_claim_returns_null_if_not_existing (line 27) | public function test_get_claim_returns_null_if_not_existing() method test_get_all_claims_returns_all_payload_claims (line 33) | public function test_get_all_claims_returns_all_payload_claims() method test_token_structure_error_cases (line 40) | public function test_token_structure_error_cases() method test_error_thrown_if_token_signature_not_validated_from_no_keys (line 69) | public function test_error_thrown_if_token_signature_not_validated_fro... method test_error_thrown_if_token_signature_not_validated_from_non_matching_key (line 77) | public function test_error_thrown_if_token_signature_not_validated_fro... method test_error_thrown_if_invalid_key_provided (line 89) | public function test_error_thrown_if_invalid_key_provided() method test_error_thrown_if_token_algorithm_is_not_rs256 (line 97) | public function test_error_thrown_if_token_algorithm_is_not_rs256() method test_token_claim_error_cases (line 105) | public function test_token_claim_error_cases() method test_keys_can_be_a_local_file_reference_to_pem_key (line 154) | public function test_keys_can_be_a_local_file_reference_to_pem_key() FILE: tests/Unit/PageIncludeParserTest.php class PageIncludeParserTest (line 11) | class PageIncludeParserTest extends TestCase method test_simple_inline_text (line 13) | public function test_simple_inline_text() method test_simple_inline_text_with_existing_siblings (line 22) | public function test_simple_inline_text_with_existing_siblings() method test_simple_inline_text_within_other_text (line 31) | public function test_simple_inline_text_within_other_text() method test_complex_inline_text_within_other_text (line 40) | public function test_complex_inline_text_within_other_text() method test_block_content_types (line 49) | public function test_block_content_types() method test_block_content_nested_origin_gets_placed_before (line 67) | public function test_block_content_nested_origin_gets_placed_before() method test_block_content_nested_origin_gets_placed_after (line 76) | public function test_block_content_nested_origin_gets_placed_after() method test_block_content_in_shallow_origin_gets_split (line 85) | public function test_block_content_in_shallow_origin_gets_split() method test_block_content_in_shallow_origin_split_does_not_duplicate_id (line 94) | public function test_block_content_in_shallow_origin_split_does_not_du... method test_block_content_in_shallow_origin_does_not_leave_empty_nodes (line 103) | public function test_block_content_in_shallow_origin_does_not_leave_em... method test_block_content_in_allowable_parent_element (line 112) | public function test_block_content_in_allowable_parent_element() method test_block_content_in_paragraph_origin_with_allowable_grandparent (line 121) | public function test_block_content_in_paragraph_origin_with_allowable_... method test_block_content_in_paragraph_origin_with_allowable_grandparent_with_adjacent_content (line 130) | public function test_block_content_in_paragraph_origin_with_allowable_... method test_block_content_in_child_within_paragraph_origin_with_allowable_grandparent_with_adjacent_content (line 139) | public function test_block_content_in_child_within_paragraph_origin_wi... method test_block_content_in_paragraph_origin_within_details (line 148) | public function test_block_content_in_paragraph_origin_within_details() method test_simple_whole_document (line 157) | public function test_simple_whole_document() method test_multi_source_elem_whole_document (line 166) | public function test_multi_source_elem_whole_document() method test_multi_source_elem_whole_document_with_shared_content_origin (line 175) | public function test_multi_source_elem_whole_document_with_shared_cont... method test_multi_source_elem_whole_document_with_nested_content_origin (line 184) | public function test_multi_source_elem_whole_document_with_nested_cont... method test_multiple_tags_in_same_origin_with_inline_content (line 193) | public function test_multiple_tags_in_same_origin_with_inline_content() method test_multiple_tags_in_same_origin_with_block_content (line 202) | public function test_multiple_tags_in_same_origin_with_block_content() method test_multiple_tags_in_differing_origin_levels_with_block_content (line 211) | public function test_multiple_tags_in_differing_origin_levels_with_blo... method test_multiple_tags_in_shallow_origin_with_multi_block_content (line 220) | public function test_multiple_tags_in_shallow_origin_with_multi_block_... method runParserTest (line 229) | protected function runParserTest(string $html, array $contentById, str... FILE: tests/Unit/SsrUrlValidatorTest.php class SsrUrlValidatorTest (line 9) | class SsrUrlValidatorTest extends TestCase method test_allowed (line 11) | public function test_allowed() method test_enssure_allowed (line 54) | public function test_enssure_allowed() FILE: tests/Uploads/AttachmentTest.php class AttachmentTest (line 11) | class AttachmentTest extends TestCase method test_file_upload (line 13) | public function test_file_upload() method test_file_upload_does_not_use_filename (line 41) | public function test_file_upload_does_not_use_filename() method test_file_display_and_access (line 56) | public function test_file_display_and_access() method test_attaching_link_to_page (line 77) | public function test_attaching_link_to_page() method test_attaching_long_links_to_a_page (line 114) | public function test_attaching_long_links_to_a_page() method test_attachment_updating (line 137) | public function test_attachment_updating() method test_file_deletion (line 161) | public function test_file_deletion() method test_attachment_deletion_on_page_deletion (line 183) | public function test_attachment_deletion_on_page_deletion() method test_attachment_access_without_permission_shows_404 (line 209) | public function test_attachment_access_without_permission_shows_404() method test_data_and_js_links_cannot_be_attached_to_a_page (line 229) | public function test_data_and_js_links_cannot_be_attached_to_a_page() method test_attachment_delete_only_shows_with_permission (line 270) | public function test_attachment_delete_only_shows_with_permission() method test_attachment_edit_only_shows_with_permission (line 292) | public function test_attachment_edit_only_shows_with_permission() method test_file_access_with_open_query_param_provides_inline_response_with_correct_content_type (line 314) | public function test_file_access_with_open_query_param_provides_inline... method test_html_file_access_with_open_forces_plain_content_type (line 333) | public function test_html_file_access_with_open_forces_plain_content_t... method test_file_access_name_in_content_disposition_header_is_sanitized (line 348) | public function test_file_access_name_in_content_disposition_header_is... method test_file_upload_works_when_local_secure_restricted_is_in_use (line 363) | public function test_file_upload_works_when_local_secure_restricted_is... method test_file_get_range_access (line 379) | public function test_file_get_range_access() method test_file_head_range_returns_no_content (line 402) | public function test_file_head_range_returns_no_content() method test_file_head_range_edge_cases (line 416) | public function test_file_head_range_edge_cases() FILE: tests/Uploads/AvatarTest.php class AvatarTest (line 13) | class AvatarTest extends TestCase method createUserRequest (line 15) | protected function createUserRequest($user): User method deleteUserImage (line 27) | protected function deleteUserImage(User $user): void method test_gravatar_fetched_on_user_create (line 32) | public function test_gravatar_fetched_on_user_create() method test_custom_url_used_if_set (line 49) | public function test_custom_url_used_if_set() method test_avatar_not_fetched_if_no_custom_url_and_services_disabled (line 65) | public function test_avatar_not_fetched_if_no_custom_url_and_services_... method test_avatar_not_fetched_if_avatar_url_option_set_to_false (line 76) | public function test_avatar_not_fetched_if_avatar_url_option_set_to_fa... method test_no_failure_but_error_logged_on_failed_avatar_fetch (line 91) | public function test_no_failure_but_error_logged_on_failed_avatar_fetch() method test_exception_message_on_failed_fetch (line 104) | public function test_exception_message_on_failed_fetch() FILE: tests/Uploads/DrawioTest.php class DrawioTest (line 8) | class DrawioTest extends TestCase method test_get_image_as_base64 (line 10) | public function test_get_image_as_base64() method test_non_accessible_image_returns_404_error_and_message (line 28) | public function test_non_accessible_image_returns_404_error_and_message() method test_drawing_base64_upload (line 48) | public function test_drawing_base64_upload() method test_drawio_url_can_be_configured (line 75) | public function test_drawio_url_can_be_configured() method test_drawio_url_can_be_disabled (line 85) | public function test_drawio_url_can_be_disabled() FILE: tests/Uploads/ImageStorageTest.php class ImageStorageTest (line 8) | class ImageStorageTest extends TestCase method test_local_image_storage_sets_755_directory_permissions (line 10) | public function test_local_image_storage_sets_755_directory_permissions() FILE: tests/Uploads/ImageTest.php class ImageTest (line 13) | class ImageTest extends TestCase method test_image_upload (line 15) | public function test_image_upload() method test_image_display_thumbnail_generation_does_not_increase_image_size (line 39) | public function test_image_display_thumbnail_generation_does_not_incre... method test_image_display_thumbnail_generation_for_apng_images_uses_original_file (line 63) | public function test_image_display_thumbnail_generation_for_apng_image... method test_image_display_thumbnail_generation_for_animated_avif_images_uses_original_file (line 76) | public function test_image_display_thumbnail_generation_for_animated_a... method test_image_edit (line 93) | public function test_image_edit() method test_image_file_update (line 114) | public function test_image_file_update() method test_image_file_update_allows_case_differences (line 141) | public function test_image_file_update_allows_case_differences() method test_image_file_update_does_not_allow_change_in_image_extension (line 168) | public function test_image_file_update_does_not_allow_change_in_image_... method test_gallery_get_list_format (line 187) | public function test_gallery_get_list_format() method test_image_gallery_lists_for_draft_page (line 215) | public function test_image_gallery_lists_for_draft_page() method test_image_usage (line 226) | public function test_image_usage() method test_php_files_cannot_be_uploaded (line 246) | public function test_php_files_cannot_be_uploaded() method test_php_like_files_cannot_be_uploaded (line 269) | public function test_php_like_files_cannot_be_uploaded() method test_files_with_double_extensions_will_get_sanitized (line 287) | public function test_files_with_double_extensions_will_get_sanitized() method test_url_entities_removed_from_filenames (line 312) | public function test_url_entities_removed_from_filenames() method test_secure_images_uploads_to_correct_place (line 344) | public function test_secure_images_uploads_to_correct_place() method test_secure_image_paths_traversal_causes_500 (line 362) | public function test_secure_image_paths_traversal_causes_500() method test_secure_image_paths_traversal_on_non_secure_images_causes_404 (line 371) | public function test_secure_image_paths_traversal_on_non_secure_images... method test_secure_image_paths_dont_serve_non_images (line 380) | public function test_secure_image_paths_dont_serve_non_images() method test_secure_images_included_in_exports (line 392) | public function test_secure_images_included_in_exports() method test_system_images_remain_public_with_local_secure (line 415) | public function test_system_images_remain_public_with_local_secure() method test_system_images_remain_public_with_local_secure_restricted (line 432) | public function test_system_images_remain_public_with_local_secure_res... method test_avatar_images_visible_only_when_public_access_enabled_with_local_secure_restricted (line 449) | public function test_avatar_images_visible_only_when_public_access_ena... method test_secure_restricted_images_inaccessible_without_relation_permission (line 469) | public function test_secure_restricted_images_inaccessible_without_rel... method test_secure_restricted_images_accessible_with_public_guest_access (line 493) | public function test_secure_restricted_images_accessible_with_public_g... method test_thumbnail_path_handled_by_secure_restricted_images (line 525) | public function test_thumbnail_path_handled_by_secure_restricted_images() method test_secure_restricted_image_access_controlled_in_exports (line 549) | public function test_secure_restricted_image_access_controlled_in_expo... method test_image_delete (line 580) | public function test_image_delete() method test_image_delete_does_not_delete_similar_images (line 602) | public function test_image_delete_does_not_delete_similar_images() method test_image_manager_delete_button_only_shows_with_permission (line 627) | public function test_image_manager_delete_button_only_shows_with_permi... method test_image_manager_regen_thumbnails (line 653) | public function test_image_manager_regen_thumbnails() method test_gif_thumbnail_generation (line 677) | public function test_gif_thumbnail_generation() method getTestProfileImage (line 711) | protected function getTestProfileImage() method test_user_image_upload (line 720) | public function test_user_image_upload() method test_user_images_deleted_on_user_deletion (line 736) | public function test_user_images_deleted_on_user_deletion() method test_deleted_unused_images (line 765) | public function test_deleted_unused_images() FILE: tests/UrlTest.php class UrlTest (line 7) | class UrlTest extends TestCase method test_url_helper_takes_custom_url_into_account (line 9) | public function test_url_helper_takes_custom_url_into_account() method test_url_helper_sets_correct_scheme_even_when_request_scheme_is_different (line 16) | public function test_url_helper_sets_correct_scheme_even_when_request_... method test_app_url_forces_overrides_on_base_request (line 23) | public function test_app_url_forces_overrides_on_base_request() method test_app_url_without_path_does_not_duplicate_path_slash (line 36) | public function test_app_url_without_path_does_not_duplicate_path_slash() FILE: tests/User/RoleManagementTest.php class RoleManagementTest (line 10) | class RoleManagementTest extends TestCase method test_cannot_delete_admin_role (line 12) | public function test_cannot_delete_admin_role() method test_role_cannot_be_deleted_if_default (line 22) | public function test_role_cannot_be_deleted_if_default() method test_role_create_update_delete_flow (line 33) | public function test_role_create_update_delete_flow() method test_role_external_auth_id_validation (line 99) | public function test_role_external_auth_id_validation() method test_admin_role_cannot_be_removed_if_user_last_admin (line 124) | public function test_admin_role_cannot_be_removed_if_user_last_admin() method test_migrate_users_on_delete_works (line 149) | public function test_migrate_users_on_delete_works() method test_delete_with_empty_migrate_option_works (line 169) | public function test_delete_with_empty_migrate_option_works() method test_entity_permissions_are_removed_on_delete (line 185) | public function test_entity_permissions_are_removed_on_delete() method test_image_view_notice_shown_on_role_form (line 208) | public function test_image_view_notice_shown_on_role_form() method test_copy_role_button_shown (line 216) | public function test_copy_role_button_shown() method test_copy_from_param_on_create_prefills_with_other_role_data (line 224) | public function test_copy_from_param_on_create_prefills_with_other_rol... method test_public_role_visible_in_user_edit_screen (line 233) | public function test_public_role_visible_in_user_edit_screen() method test_public_role_visible_in_role_listing (line 244) | public function test_public_role_visible_in_role_listing() method test_public_role_visible_in_default_role_setting (line 251) | public function test_public_role_visible_in_default_role_setting() method test_public_role_not_deletable (line 258) | public function test_public_role_not_deletable() method test_role_permission_removal (line 272) | public function test_role_permission_removal() method test_index_listing_sorting (line 289) | public function test_index_listing_sorting() FILE: tests/User/UserApiTokenTest.php class UserApiTokenTest (line 11) | class UserApiTokenTest extends TestCase method test_tokens_section_not_visible_in_my_account_without_access_api_permission (line 18) | public function test_tokens_section_not_visible_in_my_account_without_... method test_those_with_manage_users_can_view_other_user_tokens_but_not_create (line 32) | public function test_those_with_manage_users_can_view_other_user_token... method test_create_api_token (line 43) | public function test_create_api_token() method test_create_with_no_expiry_sets_expiry_hundred_years_away (line 76) | public function test_create_with_no_expiry_sets_expiry_hundred_years_a... method test_created_token_displays_on_profile_page (line 93) | public function test_created_token_displays_on_profile_page() method test_secret_shown_once_after_creation (line 108) | public function test_secret_shown_once_after_creation() method test_token_update (line 122) | public function test_token_update() method test_token_update_with_blank_expiry_sets_to_hundred_years_away (line 140) | public function test_token_update_with_blank_expiry_sets_to_hundred_ye... method test_token_delete (line 160) | public function test_token_delete() method test_user_manage_can_delete_token_without_api_permission_themselves (line 179) | public function test_user_manage_can_delete_token_without_api_permissi... method test_return_routes_change_depending_on_entry_context (line 197) | public function test_return_routes_change_depending_on_entry_context() method test_context_assumed_for_editing_tokens_of_another_user (line 220) | public function test_context_assumed_for_editing_tokens_of_another_user() FILE: tests/User/UserManagementTest.php class UserManagementTest (line 28) | class UserManagementTest extends TestCase method test_user_creation (line 30) | public function test_user_creation() method test_user_updating (line 60) | public function test_user_updating() method test_user_password_update (line 79) | public function test_user_password_update() method test_user_can_be_updated_with_single_char_name (line 100) | public function test_user_can_be_updated_with_single_char_name() method test_user_cannot_be_deleted_if_last_admin (line 110) | public function test_user_cannot_be_deleted_if_last_admin() method test_delete (line 137) | public function test_delete() method test_delete_offers_migrate_option (line 150) | public function test_delete_offers_migrate_option() method test_migrate_option_hidden_if_user_cannot_manage_users (line 158) | public function test_migrate_option_hidden_if_user_cannot_manage_users() method test_delete_with_new_owner_id_changes_ownership (line 174) | public function test_delete_with_new_owner_id_changes_ownership() method test_delete_with_empty_owner_migration_id_works (line 187) | public function test_delete_with_empty_owner_migration_id_works() method test_delete_with_empty_owner_migration_id_clears_relevant_id_uses (line 197) | public function test_delete_with_empty_owner_migration_id_clears_relev... method test_delete_removes_user_preferences (line 282) | public function test_delete_removes_user_preferences() method test_guest_profile_shows_limited_form (line 299) | public function test_guest_profile_shows_limited_form() method test_guest_profile_cannot_be_deleted (line 311) | public function test_guest_profile_cannot_be_deleted() method test_user_create_language_reflects_default_system_locale (line 325) | public function test_user_create_language_reflects_default_system_loca... method test_user_creation_is_not_performed_if_the_invitation_sending_fails (line 335) | public function test_user_creation_is_not_performed_if_the_invitation_... method test_user_create_activity_is_not_persisted_if_the_invitation_sending_fails (line 357) | public function test_user_create_activity_is_not_persisted_if_the_invi... method test_return_to_form_with_warning_if_the_invitation_sending_fails (line 375) | public function test_return_to_form_with_warning_if_the_invitation_sen... method test_user_create_update_fails_if_locale_is_invalid (line 397) | public function test_user_create_update_fails_if_locale_is_invalid() method test_user_avatar_update_and_reset (line 421) | public function test_user_avatar_update_and_reset() FILE: tests/User/UserMyAccountTest.php class UserMyAccountTest (line 14) | class UserMyAccountTest extends TestCase method test_index_view (line 16) | public function test_index_view() method test_views_not_accessible_to_guest_user (line 22) | public function test_views_not_accessible_to_guest_user() method test_profile_updating (line 35) | public function test_profile_updating() method test_profile_user_avatar_update_and_reset (line 60) | public function test_profile_user_avatar_update_and_reset() method test_profile_admin_options_link_shows_if_permissions_allow (line 90) | public function test_profile_admin_options_link_shows_if_permissions_a... method test_profile_self_delete (line 105) | public function test_profile_self_delete() method test_profile_self_delete_shows_ownership_migration_if_can_manage_users (line 122) | public function test_profile_self_delete_shows_ownership_migration_if_... method test_auth_password_change (line 135) | public function test_auth_password_change() method test_auth_password_change_hides_if_not_using_email_auth (line 154) | public function test_auth_password_change_hides_if_not_using_email_auth() method test_auth_page_has_mfa_links (line 167) | public function test_auth_page_has_mfa_links() method test_auth_page_api_tokens (line 180) | public function test_auth_page_api_tokens() method test_interface_shortcuts_updating (line 194) | public function test_interface_shortcuts_updating() method test_body_has_shortcuts_component_when_active (line 222) | public function test_body_has_shortcuts_component_when_active() method test_notification_routes_requires_notification_permission (line 233) | public function test_notification_routes_requires_notification_permiss... method test_notification_preferences_updating (line 251) | public function test_notification_preferences_updating() method test_notification_preferences_show_watches (line 276) | public function test_notification_preferences_show_watches() method test_notification_preferences_dont_error_on_deleted_items (line 295) | public function test_notification_preferences_dont_error_on_deleted_it... method test_notification_preferences_not_accessible_to_guest (line 312) | public function test_notification_preferences_not_accessible_to_guest() method test_notification_comment_options_only_exist_if_comments_active (line 327) | public function test_notification_comment_options_only_exist_if_commen... method test_notification_comment_mention_option_enabled_by_default (line 342) | public function test_notification_comment_mention_option_enabled_by_de... FILE: tests/User/UserPreferencesTest.php class UserPreferencesTest (line 7) | class UserPreferencesTest extends TestCase method test_update_sort_preference (line 9) | public function test_update_sort_preference() method test_update_sort_bad_entity_type_handled (line 32) | public function test_update_sort_bad_entity_type_handled() method test_update_expansion_preference (line 47) | public function test_update_expansion_preference() method test_toggle_dark_mode (line 65) | public function test_toggle_dark_mode() method test_dark_mode_defaults_to_config_option (line 82) | public function test_dark_mode_defaults_to_config_option() method test_dark_mode_toggle_endpoint_changes_to_light_when_dark_by_default (line 95) | public function test_dark_mode_toggle_endpoint_changes_to_light_when_d... method test_books_view_type_preferences_when_list (line 111) | public function test_books_view_type_preferences_when_list() method test_books_view_type_preferences_when_grid (line 122) | public function test_books_view_type_preferences_when_grid() method test_shelf_view_type_change (line 131) | public function test_shelf_view_type_change() method test_redirect_on_preference_change_checks_host (line 156) | public function test_redirect_on_preference_change_checks_host() method test_update_code_language_favourite (line 176) | public function test_update_code_language_favourite() FILE: tests/User/UserProfileTest.php class UserProfileTest (line 10) | class UserProfileTest extends TestCase method setUp (line 17) | protected function setUp(): void method test_profile_page_shows_name (line 23) | public function test_profile_page_shows_name() method test_profile_page_shows_recent_entities (line 30) | public function test_profile_page_shows_recent_entities() method test_profile_page_shows_created_content_counts (line 43) | public function test_profile_page_shows_created_content_counts() method test_profile_page_shows_recent_activity (line 62) | public function test_profile_page_shows_recent_activity() method test_user_activity_has_link_leading_to_profile (line 76) | public function test_user_activity_has_link_leading_to_profile() method test_profile_has_search_links_in_created_entity_lists (line 89) | public function test_profile_has_search_links_in_created_entity_lists() FILE: tests/User/UserSearchTest.php class UserSearchTest (line 9) | class UserSearchTest extends TestCase method test_select_search_matches_by_name (line 11) | public function test_select_search_matches_by_name() method test_select_search_shows_first_by_name_without_search (line 22) | public function test_select_search_shows_first_by_name_without_search() method test_select_search_does_not_match_by_email (line 32) | public function test_select_search_does_not_match_by_email() method test_select_requires_right_permission (line 41) | public function test_select_requires_right_permission() method test_select_requires_logged_in_user (line 58) | public function test_select_requires_logged_in_user() method test_mentions_search_matches_by_name (line 67) | public function test_mentions_search_matches_by_name() method test_mentions_search_does_not_match_by_email (line 79) | public function test_mentions_search_does_not_match_by_email() method test_mentions_search_requires_logged_in_user (line 88) | public function test_mentions_search_requires_logged_in_user() method test_mentions_search_requires_comment_create_or_update_permission (line 98) | public function test_mentions_search_requires_comment_create_or_update... method test_mentions_search_shows_first_by_name_without_search (line 120) | public function test_mentions_search_shows_first_by_name_without_search() FILE: tests/Util/DateFormatterTest.php class DateFormatterTest (line 9) | class DateFormatterTest extends TestCase method test_iso_with_timezone_alters_from_stored_to_display_timezone (line 11) | public function test_iso_with_timezone_alters_from_stored_to_display_t... method test_iso_with_timezone_works_from_non_utc_dates (line 20) | public function test_iso_with_timezone_works_from_non_utc_dates() method test_relative (line 29) | public function test_relative()