Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create global foundry module from single file #7453

Merged
merged 1 commit into from
Apr 18, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Create global foundry module from single file
  • Loading branch information
stwlam committed Apr 18, 2023
commit d926a14194db28bcefb22689a6c5ac12403de5d7
11 changes: 5 additions & 6 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,12 @@
"jest/globals": true
},
"extends": [
"prettier",
"plugin:import/errors",
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:json/recommended"
"plugin:import/errors",
"plugin:import/typescript",
"plugin:json/recommended",
"prettier"
],
"parserOptions": {
"ecmaVersion": 2018,
Expand Down Expand Up @@ -84,9 +85,7 @@
]
},
"eslint-import-resolver-typescript": true,
"typescript": {
"alwaysTryTypes": true
}
"typescript": true
},
"import/parsers": {
"@typescript-eslint/parser": [
Expand Down
2 changes: 1 addition & 1 deletion src/module/rules/rule-element/base.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { TokenDocumentPF2e } from "@scene/index.ts";
import { CheckRoll } from "@system/check/index.ts";
import { LaxSchemaField, PredicateField, SlugField } from "@system/schema-data-fields.ts";
import { isObject, tupleHasValue } from "@util";
import type { DataModelValidationOptions } from "types/foundry/common/abstract/data.d.mts";
import type { DataModelValidationOptions } from "types/foundry/common/abstract/data.d.ts";
import { BracketedValue, RuleElementData, RuleElementSchema, RuleElementSource, RuleValue } from "./data.ts";

const { DataModel } = foundry.abstract;
Expand Down
11 changes: 11 additions & 0 deletions types/foundry/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"rules": {
// follow foundry convention in commons module
"import/no-default-export": "off",
// import plugin doesn't understand multiple exports in type declarations
"import/export": "off",
// import plugin isn't wise to node16 module resolution
"import/no-unresolved": "off",
"no-var": "off"
}
}
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import "./active-effect-config.js";
import "./actor-sheet.js";
import "./base.js";
import "./combatant-config.js";
import "./item-sheet.js";
import "./journal-page-sheet.js";
import "./journal-sheet.js";
import "./macro-config.js";
import "./note-config.js";
import "./roll-table-config.js";
import "./scene-config.js";
import "./tile-config.js";
import "./token-config.js";
import "./user-config.js";
import "./wall-config.js";
import "./active-effect-config.d.ts";
import "./actor-sheet.d.ts";
import "./base.d.ts";
import "./combatant-config.d.ts";
import "./item-sheet.d.ts";
import "./journal-page-sheet.d.ts";
import "./journal-sheet.d.ts";
import "./macro-config.d.ts";
import "./note-config.d.ts";
import "./roll-table-config.d.ts";
import "./scene-config.d.ts";
import "./tile-config.d.ts";
import "./token-config.d.ts";
import "./user-config.d.ts";
import "./wall-config.d.ts";
16 changes: 8 additions & 8 deletions types/foundry/client/application/form-application/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import "./base.js";
import "./client-settings.js";
import "./document-sheet/index.js";
import "./document-sheet-config.js";
import "./image-popout.js";
import "./other.js";
import "./permission.js";
import "./placeables-config.js";
import "./base.d.ts";
import "./client-settings.d.ts";
import "./document-sheet/index.d.ts";
import "./document-sheet-config.d.ts";
import "./image-popout.d.ts";
import "./other.d.ts";
import "./permission.d.ts";
import "./placeables-config.d.ts";
4 changes: 2 additions & 2 deletions types/foundry/client/apps/sidebar/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import "./package-configuration.js";
import "./apps/keybindings-config.js";
import "./package-configuration.d.ts";
import "./apps/keybindings-config.d.ts";
24 changes: 12 additions & 12 deletions types/foundry/client/core/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import "./audio.js";
import "./clipboard.js";
import "./document-index.js";
import "./fonts.js";
import "./game-time.js";
import "./hooks.js";
import "./searchfilter.js";
import "./settings.js";
import "./socket.js";
import "./sorting.js";
import "./text-editor.js";
import "./video.js";
import "./audio.d.ts";
import "./clipboard.d.ts";
import "./document-index.d.ts";
import "./fonts.d.ts";
import "./game-time.d.ts";
import "./hooks.d.ts";
import "./searchfilter.d.ts";
import "./settings.d.ts";
import "./socket.d.ts";
import "./sorting.d.ts";
import "./text-editor.d.ts";
import "./video.d.ts";
2 changes: 1 addition & 1 deletion types/foundry/client/documents/active-effect.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseActiveEffect } from "./client-base-mixes.js";
import type { ClientBaseActiveEffect } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/actor.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseActor } from "./client-base-mixes.js";
import type { ClientBaseActor } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/ambient-light-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseAmbientLight } from "./client-base-mixes.js";
import type { CanvasBaseAmbientLight } from "./client-base-mixes.d.ts";

declare global {
class AmbientLightDocument<TParent extends Scene | null> extends CanvasBaseAmbientLight<TParent> {
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/ambient-sound-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseAmbientSound } from "./client-base-mixes.js";
import type { CanvasBaseAmbientSound } from "./client-base-mixes.d.ts";

declare global {
class AmbientSoundDocument<TParent extends Scene | null> extends CanvasBaseAmbientSound<TParent> {}
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/cards.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseCards } from "./client-base-mixes.js";
import type { ClientBaseCards } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/chat-message.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseChatMessage } from "./client-base-mixes.js";
import type { ClientBaseChatMessage } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/client-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseScene } from "./client-base-mixes.js";
import type { ClientBaseScene } from "./client-base-mixes.d.ts";

declare global {
// Interfaces for ClientDocuments, given there is no common base with the generated intermediate classes
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/combat.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseCombat } from "./client-base-mixes.js";
import type { ClientBaseCombat } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/combatant.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseCombatant } from "./client-base-mixes.js";
import type { ClientBaseCombatant } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/drawing-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseDrawing } from "./client-base-mixes.js";
import type { CanvasBaseDrawing } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/fog-exploration.d.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as io from "socket.io";
import { ClientBaseFogExploration } from "./client-base-mixes.js";
import type { ClientBaseFogExploration } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
4 changes: 2 additions & 2 deletions types/foundry/client/documents/folder.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseFolder } from "./client-base-mixes.js";
import type { ClientBaseFolder } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down Expand Up @@ -33,7 +33,7 @@ declare global {
get displayed(): boolean;

/** Return a reference to the Document type which is contained within this Folder. */
get documentClass(): Function;
get documentClass(): ConstructorOf<TDocument>;

/** Return a reference to the WorldCollection instance which provides Documents to this Folder. */
get documentCollection(): WorldCollection<TDocument>;
Expand Down
56 changes: 28 additions & 28 deletions types/foundry/client/documents/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
import "./active-effect.js";
import "./actor.js";
import "./ambient-light-document.js";
import "./ambient-sound-document.js";
import "./cards.js";
import "./chat-message.js";
import "./client-base-mixes.js";
import "./client-document.js";
import "./combat.js";
import "./combatant.js";
import "./drawing-document.js";
import "./fog-exploration.js";
import "./folder.js";
import "./item.js";
import "./journal-entry.js";
import "./journal-entry-page.js";
import "./macro.js";
import "./measured-template-document.js";
import "./note-document.js";
import "./playlist.js";
import "./playlist-sound.js";
import "./roll-table.js";
import "./scene.js";
import "./table-result.js";
import "./tile-document.js";
import "./token-document.js";
import "./user.js";
import "./wall-document.js";
import "./active-effect.d.ts";
import "./actor.d.ts";
import "./ambient-light-document.d.ts";
import "./ambient-sound-document.d.ts";
import "./cards.d.ts";
import "./chat-message.d.ts";
import "./client-base-mixes.d.ts";
import "./client-document.d.ts";
import "./combat.d.ts";
import "./combatant.d.ts";
import "./drawing-document.d.ts";
import "./fog-exploration.d.ts";
import "./folder.d.ts";
import "./item.d.ts";
import "./journal-entry.d.ts";
import "./journal-entry-page.d.ts";
import "./macro.d.ts";
import "./measured-template-document.d.ts";
import "./note-document.d.ts";
import "./playlist.d.ts";
import "./playlist-sound.d.ts";
import "./roll-table.d.ts";
import "./scene.d.ts";
import "./table-result.d.ts";
import "./tile-document.d.ts";
import "./token-document.d.ts";
import "./user.d.ts";
import "./wall-document.d.ts";

declare global {
type WorldDocument =
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/item.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseItem } from "./client-base-mixes.js";
import type { ClientBaseItem } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/journal-entry-page.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseJournalEntryPage } from "./client-base-mixes.js";
import type { ClientBaseJournalEntryPage } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/journal-entry.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseJournalEntry } from "./client-base-mixes.js";
import type { ClientBaseJournalEntry } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/macro.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseMacro } from "./client-base-mixes.js";
import type { ClientBaseMacro } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseMeasuredTemplate } from "./client-base-mixes.js";
import type { CanvasBaseMeasuredTemplate } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/note-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseNote } from "./client-base-mixes.js";
import type { CanvasBaseNote } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/playlist-sound.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBasePlaylistSound } from "./client-base-mixes.js";
import type { ClientBasePlaylistSound } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/playlist.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBasePlaylist } from "./client-base-mixes.js";
import type { ClientBasePlaylist } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/roll-table.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseRollTable } from "./client-base-mixes.js";
import type { ClientBaseRollTable } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/scene.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseScene } from "./client-base-mixes.js";
import type { ClientBaseScene } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/table-result.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseTableResult } from "./client-base-mixes.js";
import type { ClientBaseTableResult } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/tile-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseTile } from "./client-base-mixes.js";
import type { CanvasBaseTile } from "./client-base-mixes.d.ts";

declare global {
class TileDocument<TParent extends Scene | null> extends CanvasBaseTile<TParent> {}
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/token-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseToken } from "./client-base-mixes.js";
import type { CanvasBaseToken } from "./client-base-mixes.d.ts";

declare global {
class TokenDocument<TParent extends Scene | null> extends CanvasBaseToken<TParent> {
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/user.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ClientBaseUser } from "./client-base-mixes.js";
import type { ClientBaseUser } from "./client-base-mixes.d.ts";

declare global {
/**
Expand Down
2 changes: 1 addition & 1 deletion types/foundry/client/documents/wall-document.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { CanvasBaseWall } from "./client-base-mixes.js";
import type { CanvasBaseWall } from "./client-base-mixes.d.ts";

declare global {
class WallDocument<TParent extends Scene | null> extends CanvasBaseWall<TParent> {}
Expand Down
14 changes: 14 additions & 0 deletions types/foundry/client/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
declare global {
const CONST: typeof Constants;
namespace globalThis {
export import Color = Utils.Color;

module foundry {
export import CONST = Constants;
export import abstract = Abstract;
export import data = Data;
export import documents = Documents;
export import utils = Utils;
}
}
}
4 changes: 2 additions & 2 deletions types/foundry/client/keyboard/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import "./client-keybindings.js";
import "./keyboard-manager.js";
import "./client-keybindings.d.ts";
import "./keyboard-manager.d.ts";
4 changes: 2 additions & 2 deletions types/foundry/client/pixi/core/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import "./interaction/index.js";
import "./shapes/index.js";
import "./interaction/index.d.ts";
import "./shapes/index.d.ts";
2 changes: 1 addition & 1 deletion types/foundry/client/pixi/core/interaction/index.d.ts
Original file line number Diff line number Diff line change
@@ -1 +1 @@
import "./canvas-animation.js";
import "./canvas-animation.d.ts";
4 changes: 2 additions & 2 deletions types/foundry/client/pixi/core/shapes/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import "./polygon-helpers.js";
import "./source-polygon.js";
import "./polygon-helpers.d.ts";
import "./source-polygon.d.ts";
6 changes: 3 additions & 3 deletions types/foundry/client/pixi/grid/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
import "./base.js";
import "./hexagonal-grid.js";
import "./square-grid.js";
import "./base.d.ts";
import "./hexagonal-grid.d.ts";
import "./square-grid.d.ts";
Loading