1119 Commits

Author SHA1 Message Date
FoxxMD
859680dca8 Merge branch 'edge' 0.12.1 2022-09-01 09:03:27 -04:00
FoxxMD
18c1ac0fd7 Chore: Bump version 2022-09-01 09:03:12 -04:00
FoxxMD
2fb503f09f feat(message): Implement templating for to field so subreddit can be used generically
since 'to' be now be templated a user can configure a message to send to the subreddit the action is being processed from using `to: 'r/{{item.subreddit}}'`
2022-08-31 09:58:24 -04:00
FoxxMD
7e5eeb71da fix(submission): Fix targets data type to accept array 2022-08-31 09:31:25 -04:00
FoxxMD
84f2da8b6d feat(action): Implement Action templating data #104
* Add top-level 'actionSummary' template variable that renders a markdown list of action results
* Add individual action result/data, in the same structure as rules, under the top-level 'actions' template variable
2022-08-30 17:12:51 -04:00
FoxxMD
be51f8ae43 fix(image): Fix hash result test assertion 2022-08-30 16:13:35 -04:00
FoxxMD
f82d985eab feat(template): Refactor templating to be more extensible and add some requested data
* Implement interfaces for template parts
* Refactor Action constructor to take an object for runtime options (cleaner, more extensible)
* Refactor subreddit resource and snoowraputils content rendering and organization to use objects of optional data rather than required arguments
  * Make almost all data optional and only parse/render if included
  * Move rule results parsing/formatting into own function
  * Refactor footer render to use renderContent (DRY)
* Add some requested template data #104
  * {{item.subreddit}} #87
  * {{check}} #87
* Updated templating documentation
2022-08-26 13:42:02 -04:00
FoxxMD
aab014650a fix(template): Fix rule data spread to template 2022-08-26 11:22:59 -04:00
FoxxMD
113ac3e10e fix(template): Fix subreddit breakdown reference override 2022-08-25 17:14:28 -04:00
FoxxMD
afb6aad26d fix(template): Fix subreddit breakdown when empty activities array 2022-08-25 16:30:15 -04:00
FoxxMD
33b60825d9 fix(template): Return empty string if no subreddits in breakdown 2022-08-25 16:16:15 -04:00
FoxxMD
b5202a33ac feat(template): Add subreddit breakdown to template data for Recent and History rule 2022-08-25 10:39:03 -04:00
FoxxMD
ffa1e423b2 Merge branch 'edge' 0.12.0 2022-08-23 09:49:23 -04:00
FoxxMD
c02a2ad622 chore: Bump version constant due to BC 2022-08-23 09:49:12 -04:00
FoxxMD
09cb08492c Merge branch 'edge' 2022-08-23 09:47:59 -04:00
FoxxMD
e9f08915a4 chore: Bump version constant 2022-08-23 09:47:35 -04:00
FoxxMD
4b95ccd0ba feat(docs): Simplify getting started operator instructions
Take advantage of First Time Setup page when no configuration is present to help generate a minimum configuration.
2022-08-23 09:46:54 -04:00
FoxxMD
567a2f0720 feat(action): Implement creating submissions #93
* Create self/link submissions, no reddit media (upload) yet
* Submission can use user modifiers (nsfw, spoiler) and mod modifiers (sticky, distinguish, lock)
* Can create submission in current subreddit (default) or arbitrary subreddit defined in configuration (targets)
  * Can create multiple submissions by defining multiple targets
2022-08-22 14:00:27 -04:00
FoxxMD
61ff402256 feat(config): Allow wikiConfig override at subreddit-level 2022-08-22 10:36:18 -04:00
FoxxMD
9158bda992 feat(comment): Implement arbitrary comment targets #93 2022-08-19 11:01:54 -04:00
FoxxMD
873f9d3c91 refactor(image): Normalize image hash usage a bit more to reduce complexity 2022-08-18 13:35:37 -04:00
FoxxMD
783ef5db53 fix(image): url variable name usage 2022-08-16 13:36:36 -04:00
FoxxMD
f0cb5c1315 fix(ui): Fix constant reassignment 2022-08-16 13:36:20 -04:00
FoxxMD
8e1b916ea4 fix(database): Remove table data check due to incompatibility with postgres
Not sure what the issue is but a generic message should be enough for now
2022-08-16 10:28:10 -04:00
FoxxMD
4acf87eacd feat(database): Implement automated backup for better-sqlite3 connection 2022-08-16 10:05:20 -04:00
FoxxMD
5dd5a32c51 fix(database): Fix how new columns are added to existing table on invite migration 2022-08-16 09:47:53 -04:00
FoxxMD
207907881f feat: Add initial setup wizard
* If web client does not have credentials (or operator) then redirect login to form to fill them in
  * Write to config location on form completion
2022-08-15 17:17:23 -04:00
FoxxMD
44da276d41 fix: Fix missing column type specifying for db session entity 2022-08-15 16:05:00 -04:00
FoxxMD
6c98b6f995 fix: cleanup guests and no-config scenario
* Check for no/null guest data during invite creation/usage for both client and server side
* Add instances tab on invite page
* Replace instance select on invite page with query string usage
* Redirect from status page to auth helper when instance has no bots
2022-08-15 15:59:51 -04:00
FoxxMD
cc0c3dfe61 docs: Fix incorrect url for minimum config 2022-08-15 15:57:45 -04:00
FoxxMD
b48d75fda3 fix(config): Fix setting api friendly name
addIn creates missing collections automatically
2022-08-15 15:57:26 -04:00
FoxxMD
2adf2d258d fix(database): Handle invite migration when db is sqljs
* Create table if it does not exist (sqljs has two database)
* Drop Invite table from sqljs db if it has no rows
2022-08-15 15:56:43 -04:00
FoxxMD
c55a1c6502 feat(ui): Add initial guests to bot invite and rename Guest Mod to Guest
* Rename to Guest since this is more accurate of a description -- "mod" is confusing since user doesn't have any actual mod power
* Add guests as an option to invite creation and display on invite page
2022-08-11 15:23:09 -04:00
FoxxMD
0011ff8853 chore: Re-add clean username for guest due to merge 2022-08-11 14:53:48 -04:00
FoxxMD
4bbf871051 Merge branch 'edge' into tempAccess
# Conflicts:
#	src/Web/Server/routes/authenticated/user/index.ts
#	src/Web/Server/server.ts
2022-08-11 14:50:45 -04:00
FoxxMD
54755dc480 refactor(guest)!: Migrate invites to be owned by the server
It makes more sense for the CM instance that will actually have a bot added to it to own the invite for that bot.

* (BC) Move Invite into server entity mappings and rename to BotInvite
  * Add guests and initialConfig (future use)
  * BC -- Existing invites need to have instance defined to be used
  * BC -- Cache-based invite storage has been REMOVED
  * BC -- Removed inviteMaxAge config property (for now)
* Add SubredditInvite entity for future use
* Force/implement server (api) having a defined friendly name. This is used to determine which invites in a DB belong to which server instance
  * If not defined in config it is generated at random and then written to config
* Refactor how invites are retrieved and parsed client-side -- CRUD using server api
  * BC -- Invite URL structure has changed from ?invite=id to /invite/id...
* Added better UI for migration redirect
  * Show all reachable instances in redirect page header
  * Error page also shows reachable instances in page header
2022-08-11 14:47:45 -04:00
FoxxMD
01f95a37e7 feat(ui): Add guided tour for main dashboard 2022-08-03 14:37:56 -04:00
FoxxMD
5ddad418b0 fix(manager): Fix missing valid config check before starting queue 2022-08-02 16:05:48 -04:00
FoxxMD
b5b2e88c1f fix(guest mod): Parse/clean name from user input before adding
So that we don't care if user sends FoxxMD or u/FoxxMD
2022-08-02 15:46:56 -04:00
FoxxMD
194ded7be6 fix(auth): Fix subreddit normalization on client instance 2022-08-02 15:31:00 -04:00
FoxxMD
7ba375d702 fix(auth): Fix subreddit normalization 2022-08-02 14:15:01 -04:00
FoxxMD
9a4c38151f fix(auth): Fix default instance middleware accessibility check 2022-08-02 14:06:49 -04:00
FoxxMD
f8df6fc93f docs: Remove removal reason footnote 2022-08-02 13:02:28 -04:00
FoxxMD
86a3b229cb feat(remove): Implement removal reason id and note
* Cache subreddit removal reasons and display in popup helper in authenticated config editor
* Add fields for removal reason note/reason in remove action
* Update remove action documentation to include new fields
2022-08-02 12:34:40 -04:00
FoxxMD
ca3e8d7d80 feat: Add removal reason related endpoints to snoowrap client
Using undocumented endpoints pulled from praw documentation/code. Snoowrap can now:

* add removal reason/mod note on a removed activity
* get subreddit removal reasons (used for getting ids for use with removal reason endpoint)
2022-08-02 11:09:05 -04:00
FoxxMD
5af4384871 Merge branch 'tempAccess' into edge 2022-08-01 12:08:10 -04:00
FoxxMD
47957e6ab9 fix: Remove debug statements for image processing 2022-07-29 15:05:08 -04:00
FoxxMD
7f1a404b4e feat(image): Implement image flip detection in recent rule 2022-07-29 14:42:49 -04:00
FoxxMD
1f64a56260 feat(image): Improve image normalization to make duplicate detection more powerful
* Trim image to remove arbitrary borders
* Convert image to greyscale in order to reduce effect of saturation differences
* Implement "mirrored" (y-axis flip) hash calculations
* Implement local file fetch and image processing test suite
2022-07-29 14:19:32 -04:00
FoxxMD
366cb2b629 More guest mod cleanup and fixes
* Default value on guest mod CRUD
* Validate expire time client-side
2022-07-28 14:28:43 -04:00