0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-29 11:12:33 +01:00
Commit Graph

199 Commits

Author SHA1 Message Date
Karl-Aksel Puulmann
cb6839fe21
Revert "Adds reserved properties for filtering property definitions (#8291)" (#8340)
This reverts commit a6ff568d11.
2022-01-28 15:51:54 +02:00
Paul D'Ambra
a6ff568d11
Adds reserved properties for filtering property definitions (#8291)
* wip

* wip

* wip

* can filter events by reserved words - distinct_id, created_at, and timestamp - in the backend

* add reserved properties when showing property definitions

* capitalise name of property

* properties not reserved words

* get cypress working and make search work with reserved properties

* update event/values endpoint to use property_string_expr and so work with reserved properties

* remove created at from reserved words

* test fix

* fix test

* loosen cypress assertion

* exclude specific properties from the taxonomic property filter

* remove FE property definition fangling

* exclude $time and $timestamp property definitions from the backend

* add reserved properties in the API not the FE using a CTE

* use SQL comments in SQL strings

* remove mypy error

* fix enterprise property definitions

* fix tests and improve comment

* exclude materialised column rows with no values when getting event property definitions

* fix cypress test setup

* clean up dead code

* un-remove some not actually dead code

* correct cypress assertion

* try and fix a cypress test
2022-01-28 12:19:17 +00:00
Paul D'Ambra
7f4a8a11e0
Make the time filtering of the events tables explicit (#8247)
* add a pinned time filter to events table without changing any behaviour

* resolve tsc errors

* add commented out test that appears to fail because of  vs timestamp

* more clarity from tests around API interactions and simplify event logic API after param

* add comment explaining why we assert on the API mock expectations

* move the last test that asserts on API into the commented describe block

* makes property pills grey

* skip test instead of commenting

* rename away from tunnel vision about one year ago

* Add a tooltip to the pinned filter on events table

* remove pinned filters in favour of page-level description

* remove more pinned filter code

* avoid the page header wrap around
2022-01-25 22:34:34 +00:00
Paul D'Ambra
7c3e6fb53b
Allow trends to do maths with page performance (#8255)
* allow trends to do maths with page performance

* try forcing a click in cypress test

* copy passing test from another branch

* copy passing test from another branch

* copy passing test from another branch
2022-01-25 16:25:20 +00:00
Michael Matloka
6df66208e3
UI enhancements (around dashboards) (#8227)
* Fix EditableField textarea width

* Make it clearer when a LemonButtonWithPopup is open

* Improve resizing dashboard items in mobile layout

* Add enter/exit animation to `Popup`

* Tune `ShareButton`

* Rotate `Popup` a bit less

* Improve style edge cases

* Use period instead of exclamation mark

* Update InsightsTable.tsx

* Align shadows with design

* Align modal shadow with design

* Update shadow opacity

* Use `perspective-origin: top`

* Rename `held` to `active`

* Update events.js
2022-01-25 11:29:03 +00:00
Michael Matloka
1bce7effaa
New DashboardHeader and better EditableField (#8146)
* Reimplement `EditableField` to be seamless

* Implement base of `LemonDashboardHeader`

* Get rid of `controlledMode`

* Make in-progress dashboard updates tentatively apply in local state

* Add `sharedDashboard` to `urls`

* Complete new `DashboardHeader`

* Iterate on `EditableField`

* Use simpler terms for editing layout

* Update dashboardPremium.js

* Fix saving tags

* Improve EditableField sizing

* Reposition Popup on size change

* Remove LemonButton-in-Popup magic

* Remove `updateDashboard` pre-saving

* Use muted color only for the placeholder

* Add payment gate to descriptions

* Update LemonDashboardHeader.tsx

* Update dashboard.js

* Revert "Update dashboard.js"

This reverts commit 50cf72d549.
2022-01-22 01:27:30 +01:00
Michael Matloka
b1f304754f
Redesigned person & group pages (#7988)
* Implement new person page layout

* Simplify default 404 page similar to person 404

* Set page headings to weight 600 instead of 700 to align with design

* Fix style of person loading state and page title

* Don't use deprecated `substr`

* Rework `LemonRow` compact mode

* Rework group page too

* Update group 404 message

* Fix `personsLogic`

* Add comment

* Fix type name conflict

* Update Person.cy-spec.js

* Update person.js

* Update Person.cy-spec.js

* Fix display of extra person IDs

* Update Person.cy-spec.js

* Improve property key/value sizing

* Update person.js

* Optimize personsLogic's urlToAction

* Put property deletion button in its own rightmost column

* Add `SessionRecordingsTable` empty state

* Use `IconDeleteForever` instead of `IconClose` for deletion

* Update person.js

* Fix sync of person and cohorts

* Fix "Should merge person"
2022-01-18 21:24:19 +01:00
Michael Matloka
a217d4c18c
Revert "Collaboration Taxonomy - New FF + New Page (#7938)" (#8070) 2022-01-14 18:34:24 +01:00
Paolo D'Amico
644efe0667
Team member invite improvements (#7993)
* refactor entire invite logic

* use lemon table for invites

* update no email warnings

* additional redirection

* Simplify `.info-message`

* Use muted styling for all LemonTable empty states

* Use common `EmailUnavailableMessage`

* Refactor for a global <InviteModal/>

* Update invite deletion button for new style

* Bring columns in line with other LemonTables and add invitee name

* Hide invite modal when location changes

* Align details to existing Cypress test

* Update invitesMembers.js

* Add data-attrs

* Fix invite deletion Cypress

* Update wording

Co-authored-by: Michael Matloka <dev@twixes.com>
2022-01-14 12:33:18 +01:00
Paul D'Ambra
1974cbb3d2
Remove hard-coded DateTime knowledge from Property Filter UI (#7892)
* wip

* display known unix timestamps as date strings in property filter select box

* show selected unix timestamp property as a datetime string in the property filter

* remove console.log

* update test to construct property definition correctly

* correct another test

* dates have different operators

* format property filter values for display in Select boxes and the PropertyValue component

* fix typescript error

* it _is_ a type, I don't need to say it is

* don't have before and after for unmatched types of operators

* separate the current applicable operators and the operator to display mapping, and add cypress tests for before and after operator visibility

* correct cypress test

* remove unused method

* remove dangling comment

* why does test fail in CI but not locally

* why does test fail in CI but not locally

* why does test fail in CI but not locally

* log values of operator options, why does this fail in CI but not locally

* why does test fail in CI but not locally

* intercept more decide calls to try and set feature flags from cypress test

* why does test fail in CI but not locally

* Remove cypress install

* add a readme for how to test feature flags so it isn't lost if there are no tests currently testing feature flags
2022-01-13 20:10:39 +00:00
Paolo D'Amico
d5c25c6522
Fix flaky breadcrumbs test (#8039) 2022-01-13 12:56:08 -06:00
Alex Gyujin Kim
7166ada694
Collaboration Taxonomy - New FF + New Page (#7938)
Co-authored-by: Marius Andra <marius.andra@gmail.com>
2022-01-12 18:57:04 +00:00
Paolo D'Amico
374d70cc14
Remove sessions insight frontend (#7912) 2022-01-06 18:53:20 -06:00
Michael Matloka
365d7b27fc
PostHog demo environment (#7824)
* Remove "Self-Hosted" from logo

* Add new env var-based setting `DEMO`

* Enable recordings in demo project by default

* Merge login and signup into "demo signin" when `DEMO` on

* Show `DEMO` announcement

* Update realm with option `demo`

* Update test_preflight.py

* Improve `realm` typing

* Update E2E test

* Address feedback

* Satisfy mypy
2022-01-03 19:40:52 +01:00
Tim Glaser
2adc6258d2
Run e2e with clickhouse (#7705)
* Run e2e with clickhouse

* Set kafka to /etc/hosts, and speed up waiting

* fix persons page

* Migrate clickhouse

* Update e2e-test-runner

* Fixes/improvements

* fingers x'ed

* fix

* revert url

* fix demo data

* fix test

* Run Redis in docker

* fix test

* fix redis

* trap

* fix e2e-test-runner

* try localhost instead of kafka

* Revert "try localhost instead of kafka"

This reverts commit 58869c96df.
2022-01-03 14:26:54 +00:00
Marius Andra
c156b0be5d
Replace old insight table with lemon table (#7817)
* replace old insight table with lemon table

* fix count

* Improve table UI further

* Fix sorting interfering with summary type dropdown

* Use a more appropriate loading state

* Update Cypress test

Co-authored-by: Michael Matloka <dev@twixes.com>
2021-12-21 23:19:23 +01:00
Marius Andra
d6fc597f97
Throw when trying to save insight with empty filters (#7802)
* do not save insight if filters empty

* fix another test

* add second update guard

* fix errors

* fix test

* fix timezone-dependent test

* fix test

* fix save to dashboard test

* fix the fix
2021-12-21 16:54:42 +01:00
Michael Matloka
ebb75bd2fa
Unify "Hogflix" casing (#7700) 2021-12-14 15:34:01 +01:00
Michael Matloka
dcb1e31212
Always allow editing insight name (#7633)
* Always allow editing insight name

* Update dashboardLogic.tsx

* Add E2E test

* Run prettier

* Remove unused vars

* Fix infinite `loadDashboardItems` loop

* Fix insight<>dashboard state sync (#7635)

* Update dashboardLogic.tsx

* Add Cypress test

* Run prettier

* Rename "Add graph" to more accurate "New insight"

* Fix `AnnotationScope`
2021-12-10 17:15:37 +01:00
Harry Waye
79d02059b9
ci(e2e): improve debug logging for github action workflow (#7629)
* github action artifact cypress videos

* artifact logs

* Fix cypress video export

* Redirect all output

* wait for initial retention load

* specify retry in ci

* use bin/start instead of bin/docker-*

* capture django app output in gunicorn log

* use docker-worker and docker-server again

* Remove gunicorn capture output settings
2021-12-10 12:38:25 +00:00
Alex Gyujin Kim
5f80e24a34
Make compare previous better + new legend (#7510)
Co-authored-by: Paolo D'Amico <paolodamico@users.noreply.github.com>
2021-12-09 05:54:32 +00:00
Michael Matloka
cc7d3ed3fc
Fix breadcrumbs and add some Cypress tests (#7533)
* Fix breadcrumbs and add some Cypress tests

* Update licenses.js
2021-12-07 10:58:28 +01:00
Paul D'Ambra
c26cda87ea
fixes for new short insight urls (#7460)
* fixes for new short insight urls

* add a test and a longer timeout to try and deflake a test

* Update frontend/src/lib/components/IntervalFilter/intervalFilterLogic.ts

Co-authored-by: Michael Matloka <dev@twixes.com>

* Update frontend/src/scenes/insights/InsightDateFilter/insightDateFilterLogic.ts

Co-authored-by: Michael Matloka <dev@twixes.com>

* use urls helper to generate test urls

Co-authored-by: Michael Matloka <dev@twixes.com>
2021-12-01 14:56:36 +00:00
Michael Matloka
b1ae47b071
Refresh Actions page (#7397)
* Refresh Actions page

* fix feature flag test

Co-authored-by: Marius Andra <marius.andra@gmail.com>
2021-11-30 09:38:05 +00:00
Michael Matloka
2e49f4ebde
Refresh cohorts list (#7381)
* Refresh cohorts list

* Tune page sizes

* Update cohorts.js

* Restore recordings link
2021-11-26 15:29:30 +01:00
Michael Matloka
6fffbaad16
Update properties table (#7377)
* Update properties table

* Fix E2E test
2021-11-26 13:00:37 +01:00
Paolo D'Amico
f27bc8c12b
Product cue to funnels (#7301) 2021-11-25 11:32:46 -08:00
Marius Andra
fbba78718c
Insight URL cleanup (#7201)
* insight route refactor, part 1

* add fromItem to get redirects

* fix some tests

* adjust many more paths

* fix test

* move new insight creation into insight logic

* fix a noisy test

* simplify one test

* open the url with the right filters

* null fix

* fix some more noisy tests

* move saved insights to `/insights`, fix logic tests

* fix cypress urls

* fix some tests

* fix even more insight urls

* wait a bit longer

* add old saved_insights redirect

* this might not be there yet

* rename newInsight -> insightNew

* rename Scene.Insights -> Scene.Insight

* also redirect old searches without fromItem

* fix link

* fix TS merge bugs

* fix import

* fix imports

* fix tests

* fix test

* Run prettier

* fix changes after merge

* switch to a simpler scene

* fix another test

* fix "save as" reset

* rerun tests

* Insight Short URLs (#7259)

* convert a bunch of things to user short_id instead of id

* fix more TS errors

* fix test

* fix jest tests

* various fixes

* add wise words

* type InsightShortId-s to make life easier

* reduce a bit of test noise

* use the InsightShortId in the URL

* fix type

* fix test

* fix insight url preloading

* pass dive dashboards as having insight short ids

* fix short url redirect

* mock scenelogic api

* better types and tests

* type fixes

* fix bug of linking to ourselves

* add back "id"

* get rid of some "getInsightId" calls

* two more

* few more

* refactor last usage of getInsightId

* move files around and improve errors

* make it simpler

* small fixes

* redirect to new url from old hashParam=42

* fix regression

* alert the user if we could not find an insight with the old ID format

* switch to a simpler scene

* fix another test

* Fix annotation creation

* Make short ID friendlier

* remove comments

* simplify insight links from dashboards and saved insights

* remove insight router

* fix TS

* Revert "remove insight router"

This reverts commit e52f474949.

Co-authored-by: Michael Matloka <dev@twixes.com>

Co-authored-by: Michael Matloka <dev@twixes.com>
2021-11-25 15:39:49 +01:00
Karl-Aksel Puulmann
2d919d6120
Groups/Feature flags: Allow choosing to aggregate by groups in UI (#7322)
* Update breadcrumb text

According to https://www.figma.com/file/gQBj9YnNgD8YW4nBwCVLZf/PostHog-App?node-id=5346%3A28614

* Extract code snippets to their own files

* Start refactoring/rewording feature flags pages

* Play with spacing

* Tags, add new and margins

* Delete match group button + margin on save button

* Update UTM_TAGS import

* Add duplicate option

* Update spacing

* update some actions naming

* Show group type(s) selection when groups enabled

* Remove the slider

* Add a new color

* Add grey badges to feature flags page

* Grey badges on FF page

* Toggle taxonomic groups based on dropdown selection

* Reset filters when group type changes

* Update wording

* Handle key change

* More consistent update when Match By changes
2021-11-25 16:29:04 +02:00
Tim Glaser
e10ea61d63
Use normal filters person (#7325)
* Use normal filters for person

* Clean up is_identified

* fix jest stuff

* fix tests and nits

* types etc

* e2e test
2021-11-24 18:21:56 +01:00
Marius Andra
e5db2145a7
Activate turbo mode (#7254)
* activate turbo mode

* fix test

* remove comment

* reduce noise in tests

* fix missing var
2021-11-23 17:22:05 +01:00
Tim Glaser
950fc3bee8
Add save as button (#7174)
* Add save as button

* Dont use lemon button

* Commit file

* Fix eslint

* Fix issues

* fix

* fix typing

* fix tests

* Remove save and continue editing

* fix test

* Revert "Remove save and continue editing"

This reverts commit 5296f75b49.

* Revert "fix test"

This reverts commit 69b8cd9ae8.

* Copy changes

* Push instead of replace

* remove save new
2021-11-23 10:56:48 +01:00
Michael Matloka
12329333dc
Dashboards polishes (#7266)
* Fix Cypress test

* Improve pin alignment
2021-11-22 16:03:46 +00:00
Michael Matloka
2f1a6af0ef
Fresh table pilot (#7103)
* Add `LemonTable` base to Feature flags page

* Fix basic styling

* Rework more of the table

* Fix column `align`

* Update eventsListLogic.ts

* Align FF table columns with design

* Add pagination

* Add table loader

* Add `LemonTable` to Storybook

* Add sorting

* Increase feature flags page size to 50

* Add scroll indication

* Fix minor issues

* Fix typing

* Update E2E test

* Sort one column at a time

* Add default sorting

* Improve current page handling

* Use search params for current page state

* Don't mute disabled feature flags

* Add overlay for loading state

* Add profile picture to Created by and improve comments

* Fix `createdByColumn`

* Refactor the More button for reusability

* Fix content sizing (pagination/loader filling full width when scrolled)

* Remove need for `@ts-expect-error`
2021-11-19 17:50:43 +01:00
Marius Andra
9b14556ae4 this seems to take time 2021-11-18 23:36:01 +01:00
Marius Andra
a8ca2ac634
add change (#7181) 2021-11-17 11:24:16 +01:00
Marius Andra
0338759da8
Fix feature flag edit page load (#7076)
* fix feature flag edit on page load

* Update E2E Feature flags test

Co-authored-by: Michael Matloka <dev@twixes.com>
2021-11-16 09:12:21 +01:00
Michael Matloka
b32a77fb56
Release lemonade for self-hosted users (#7059)
Co-authored-by: Paolo D'Amico <paolodamico@users.noreply.github.com>
2021-11-11 12:20:01 -08:00
Paul D'Ambra
33f2399981
Do not alter paths data when loading through d3js (#7026)
* d3-sankey alters the object passed into it. we must copy the object we pass to it

* save a path in a test

* don't rely on being able to query the toast when testing if paths saved
2021-11-10 16:58:39 +00:00
Michael Matloka
ac2c51e451
Rework "On dashboard" button (#6959)
* Rework "On dashboard" button

* Adjust things

* Simplify things

* Update modal text and E2E tests
2021-11-10 13:32:01 +01:00
Marius Andra
bc9ebaf712
Release Saved Insights (#6995) 2021-11-09 15:29:05 -08:00
Paul D'Ambra
0cdfb2531a
Only load events table from the URL on allow list of URLs (#6949)
* only load events table from the URL on allow list of URLs

* add return type to function

* pass scene URL into events table

* use urlpattern to check if scene is loaded in events table

* don't need to check if still on the same page as when loaded because urltoaction is now specific

* which means we don't need url pattern matching at all

* add scene url to events scene export's logic props

* use a different action name for each run or retries can never complete as the action cannot be saved

* do not poll results if moved away from sceneUrl

* remove tabs from person/action event tables

* so cypress can run locally

* break the dependency of running one test first so the other can pass

* move check into logic and add an e2e test

Co-authored-by: Marius Andra <marius.andra@gmail.com>
2021-11-09 15:35:41 +00:00
Marius Andra
a8ecf33be8
Preload chunks when loading scenes (#6942)
* preload chunks when loading esbuild scenes

* fix TS error

* fix license title

* fix scene identifiers in menu

* lowercase data-attr

* make the events menu have the old data-attr

* change var name to clarify its usage
2021-11-09 10:37:01 +00:00
Marius Andra
33d37cd79a
fix cypress funnel tests, volkswagen style (#6906) 2021-11-05 10:55:18 +01:00
Michael Matloka
a18beb8e63
Fix test depending on OrganizationBasicSerializer (#6795)
* Update test_user.py

* Account for "administrator" being shortened to "admin"
2021-11-02 23:58:35 +01:00
Michael Matloka
137c699150
Add site popover on profile picture to fresh top bar (#6701)
* Keep top bar always visible

* Add `LemonPopover`

* Add empty account control sections

* Rename `AccountControl` to `SitePopover`

* Add basic Sign out button

* Add `LemonButton` and use it for sign out

* Scale down popover scaling

* Remove `LemonPopover` in favor of `Popup`

* Improve icons story

* Polish account info

* Add organizations to site popover

* Add `CreateOrganizationModal` to  `TopBar`

* Polish things

* Add PostHog status items

* Update FunnelTab.tsx

* Rename `InitialBlob` to `Lettermark`

* Update utils.test.ts

* Address feedback

* Handle long emails

* Update Cypress test for sentence case title
2021-10-29 16:36:08 +02:00
Paolo D'Amico
f3222d2643
UX revamp for split/merge persons (#6544) 2021-10-26 14:27:00 -07:00
Paul D'Ambra
a957f0abb0
adds a search box to the toolbar featureflag list (#6527)
* adds a search box to the toolbar featureflag list

* test flakes because react is re-rendering between the get and the click. add an assertion to try and slow cypress down to avoid this

* move filtering toolbar feature flags to a Set and out of CSS

* support initKeaTestLogic() with no args

* fix query-selector-all-deep jest bug

* add simple test case for feature flags logic

* combine selectors

* with more understanding of Fuse

* add simple test for flag filtering

Co-authored-by: Marius Andra <marius.andra@gmail.com>
2021-10-20 22:02:02 +00:00
Harry Waye
af876da5f0
ci(e2e): use fixed width email address to avoid flaky (#6545) 2021-10-19 07:15:11 -07:00
Paolo D'Amico
39ff3abab2
Persisted flags for 1.29.0 (#6401) 2021-10-18 02:32:20 +03:00