to_user_id bigint NOT NULL,
to_user_visible boolean DEFAULT true NOT NULL,
from_user_visible boolean DEFAULT true NOT NULL,
- body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL
+ body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL,
+ muted boolean DEFAULT false NOT NULL
);
CREATE TABLE public.redactions (
id integer NOT NULL,
- title character varying,
- description text,
+ title character varying NOT NULL,
+ description text NOT NULL,
created_at timestamp without time zone,
updated_at timestamp without time zone,
user_id bigint NOT NULL,
ALTER SEQUENCE public.user_blocks_id_seq OWNED BY public.user_blocks.id;
+--
+-- Name: user_mutes; Type: TABLE; Schema: public; Owner: -
+--
+
+CREATE TABLE public.user_mutes (
+ id bigint NOT NULL,
+ owner_id bigint NOT NULL,
+ subject_id bigint NOT NULL,
+ created_at timestamp(6) without time zone NOT NULL,
+ updated_at timestamp(6) without time zone NOT NULL
+);
+
+
+--
+-- Name: user_mutes_id_seq; Type: SEQUENCE; Schema: public; Owner: -
+--
+
+CREATE SEQUENCE public.user_mutes_id_seq
+ START WITH 1
+ INCREMENT BY 1
+ NO MINVALUE
+ NO MAXVALUE
+ CACHE 1;
+
+
+--
+-- Name: user_mutes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
+--
+
+ALTER SEQUENCE public.user_mutes_id_seq OWNED BY public.user_mutes.id;
+
+
--
-- Name: user_preferences; Type: TABLE; Schema: public; Owner: -
--
ALTER SEQUENCE public.user_roles_id_seq OWNED BY public.user_roles.id;
---
--- Name: user_tokens; Type: TABLE; Schema: public; Owner: -
---
-
-CREATE TABLE public.user_tokens (
- id bigint NOT NULL,
- user_id bigint NOT NULL,
- token character varying NOT NULL,
- expiry timestamp without time zone NOT NULL,
- referer text
-);
-
-
---
--- Name: user_tokens_id_seq; Type: SEQUENCE; Schema: public; Owner: -
---
-
-CREATE SEQUENCE public.user_tokens_id_seq
- START WITH 1
- INCREMENT BY 1
- NO MINVALUE
- NO MAXVALUE
- CACHE 1;
-
-
---
--- Name: user_tokens_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
---
-
-ALTER SEQUENCE public.user_tokens_id_seq OWNED BY public.user_tokens.id;
-
-
--
-- Name: users; Type: TABLE; Schema: public; Owner: -
--
image_use_gravatar boolean DEFAULT false NOT NULL,
auth_provider character varying,
home_tile bigint,
- tou_agreed timestamp without time zone
+ tou_agreed timestamp without time zone,
+ diary_comments_count integer DEFAULT 0,
+ note_comments_count integer DEFAULT 0
);
--
--- Name: user_roles id; Type: DEFAULT; Schema: public; Owner: -
+-- Name: user_mutes id; Type: DEFAULT; Schema: public; Owner: -
--
-ALTER TABLE ONLY public.user_roles ALTER COLUMN id SET DEFAULT nextval('public.user_roles_id_seq'::regclass);
+ALTER TABLE ONLY public.user_mutes ALTER COLUMN id SET DEFAULT nextval('public.user_mutes_id_seq'::regclass);
--
--- Name: user_tokens id; Type: DEFAULT; Schema: public; Owner: -
+-- Name: user_roles id; Type: DEFAULT; Schema: public; Owner: -
--
-ALTER TABLE ONLY public.user_tokens ALTER COLUMN id SET DEFAULT nextval('public.user_tokens_id_seq'::regclass);
+ALTER TABLE ONLY public.user_roles ALTER COLUMN id SET DEFAULT nextval('public.user_roles_id_seq'::regclass);
--
ADD CONSTRAINT user_blocks_pkey PRIMARY KEY (id);
+--
+-- Name: user_mutes user_mutes_pkey; Type: CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY public.user_mutes
+ ADD CONSTRAINT user_mutes_pkey PRIMARY KEY (id);
+
+
--
-- Name: user_preferences user_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ADD CONSTRAINT user_roles_pkey PRIMARY KEY (id);
---
--- Name: user_tokens user_tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -
---
-
-ALTER TABLE ONLY public.user_tokens
- ADD CONSTRAINT user_tokens_pkey PRIMARY KEY (id);
-
-
--
-- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
CREATE INDEX index_reports_on_user_id ON public.reports USING btree (user_id);
+--
+-- Name: index_user_blocks_on_creator_id_and_id; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE INDEX index_user_blocks_on_creator_id_and_id ON public.user_blocks USING btree (creator_id, id);
+
+
--
-- Name: index_user_blocks_on_user_id; Type: INDEX; Schema: public; Owner: -
--
CREATE INDEX index_user_blocks_on_user_id ON public.user_blocks USING btree (user_id);
+--
+-- Name: index_user_mutes_on_owner_id_and_subject_id; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE UNIQUE INDEX index_user_mutes_on_owner_id_and_subject_id ON public.user_mutes USING btree (owner_id, subject_id);
+
+
--
-- Name: messages_from_user_id_idx; Type: INDEX; Schema: public; Owner: -
--
CREATE UNIQUE INDEX user_roles_id_role_unique ON public.user_roles USING btree (user_id, role);
---
--- Name: user_tokens_token_idx; Type: INDEX; Schema: public; Owner: -
---
-
-CREATE UNIQUE INDEX user_tokens_token_idx ON public.user_tokens USING btree (token);
-
-
---
--- Name: user_tokens_user_id_idx; Type: INDEX; Schema: public; Owner: -
---
-
-CREATE INDEX user_tokens_user_id_idx ON public.user_tokens USING btree (user_id);
-
-
--
-- Name: users_auth_idx; Type: INDEX; Schema: public; Owner: -
--
--
--- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -
+-- Name: users_display_name_canonical_idx; Type: INDEX; Schema: public; Owner: -
--
-CREATE UNIQUE INDEX users_display_name_idx ON public.users USING btree (display_name);
+CREATE INDEX users_display_name_canonical_idx ON public.users USING btree (lower(NORMALIZE(display_name, NFKC)));
--
--- Name: users_display_name_lower_idx; Type: INDEX; Schema: public; Owner: -
+-- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: -
--
-CREATE INDEX users_display_name_lower_idx ON public.users USING btree (lower((display_name)::text));
+CREATE UNIQUE INDEX users_display_name_idx ON public.users USING btree (display_name);
--
ADD CONSTRAINT fk_rails_330c32d8d9 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID;
+--
+-- Name: user_mutes fk_rails_591dad3359; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY public.user_mutes
+ ADD CONSTRAINT fk_rails_591dad3359 FOREIGN KEY (owner_id) REFERENCES public.users(id);
+
+
--
-- Name: oauth_access_tokens fk_rails_732cb83ab7; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ADD CONSTRAINT fk_rails_cc886e315a FOREIGN KEY (owner_id) REFERENCES public.users(id) NOT VALID;
+--
+-- Name: user_mutes fk_rails_e9dd4fb6c3; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY public.user_mutes
+ ADD CONSTRAINT fk_rails_e9dd4fb6c3 FOREIGN KEY (subject_id) REFERENCES public.users(id);
+
+
--
-- Name: oauth_access_tokens fk_rails_ee63f25419; Type: FK CONSTRAINT; Schema: public; Owner: -
--
ADD CONSTRAINT user_roles_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
---
--- Name: user_tokens user_tokens_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
---
-
-ALTER TABLE ONLY public.user_tokens
- ADD CONSTRAINT user_tokens_user_id_fkey FOREIGN KEY (user_id) REFERENCES public.users(id);
-
-
--
-- Name: way_nodes way_nodes_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
--
('23'),
('22'),
('21'),
+('20240605134916'),
+('20240405083825'),
+('20240307181018'),
+('20240307180830'),
+('20240228205723'),
+('20240117185445'),
+('20231213182102'),
('20231206141457'),
('20231117170422'),
('20231101222146'),
('20231029151516'),
+('20231010203028'),
+('20231010201451'),
('20231010194809'),
('20231007141103'),
('20230830115220'),
('11'),
('10'),
('1');
+