0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-30 19:41:46 +01:00
Commit Graph

87 Commits

Author SHA1 Message Date
Eric Duong
1dac0ad699
Persons component test (#3266)
* WIP: get cypress something doing

* Get a test running

* Get css loading, stub posthog

* Move helpers to separate file

* Givens > given2

It plays nicer with beforeEach

* Test for session filters

* Test date navigation

* Test filtering

* Try keep old tests running

* Try get tests running under CI

* Prettify fixtures

* Cleanup, use cypress 6

* Add yarn build

* Fix e2e cypress tests

* given2 => givens

* Rename `frontend-test-runner` to `e2e-test-runner`

* Fix cypress test

* add devdependency

* add scaffold

* person test

* fix type

* fix check

* inline fixture

Co-authored-by: Karl-Aksel Puulmann <oxymaccy@gmail.com>
2021-02-10 08:25:17 +02:00
Karl-Aksel Puulmann
30b6692920
React component tests with cypress (#3233)
* WIP: get cypress something doing

* Get a test running

* Get css loading, stub posthog

* Move helpers to separate file

* Givens > given2

It plays nicer with beforeEach

* Test for session filters

* Test date navigation

* Test filtering

* Try keep old tests running

* Try get tests running under CI

* Prettify fixtures

* Cleanup, use cypress 6

* Add yarn build

* Fix e2e cypress tests

* given2 => givens

* Rename `frontend-test-runner` to `e2e-test-runner`

* Fix cypress test

* Add webpack-preprocessor as a devDependency

* Improve freezing time

* Make css inclusions automatic for component tests
2021-02-09 17:28:01 +02:00
Tim Glaser
2297b0f1cf
Grab all events and properties even if job hasn't run yet (#3200)
* Grab all events and properties even if job hasn't run yet

* Use next on generator instead of list comprehension

* Replace IndexError with StopIteration

* Don't raise StopIteration at all

* try delay

Co-authored-by: Michael Matloka <dev@twixes.com>
2021-02-08 18:34:27 +01:00
Karl-Aksel Puulmann
4c98e78c0f
Fix LinkButton component (#3194)
Caused by Link component updates

Fixes https://github.com/PostHog/posthog/issues/3193
2021-02-04 13:26:38 +02:00
Paolo D'Amico
167a79fa2f
Release navigation-1775 (#3167)
Co-authored-by: yakkomajuri <yakko.majuri@gmail.com>
2021-02-04 10:53:00 +01:00
Eric Duong
f1bb651b70
removee proj seetting test (#3179) 2021-02-03 19:15:16 +02:00
Karl-Aksel Puulmann
15d04d9e56
Improve demo data (#3111)
* Unify clickhouse and pg demo data creation

* Adapt yakkos demo data generation to normal demo

* Split demo.py into subfolder

* Add original, web data import

Note that elements are not added because they can't be added
automagically :(.

* Improve wording

* dont generate dashboards

* try get tests passing

* fix types

* Get cypress tests green
2021-01-28 13:50:01 +02:00
Karl-Aksel Puulmann
da92f0bbac
Allow rolling feature flags out to multiple groups (#3030)
* Support multiple groups in feature flags model

This will be part of #3007

I did not do a migration since it would cause errors for decide endpoint
once migrations have run but new schema not up.

* Update analytics_metadata method

* Allow defining multiple groups in frontend

* Allow sorting

* Update tests, allow submit without filters.

* Update cypress

* Avoid N+1 queries

* Indicate filters better in table
2021-01-26 01:18:05 +02:00
Eric Duong
4b7b0d5abe
just match on localhost (#3002) 2021-01-19 21:37:30 +01:00
Tim Glaser
1a6207d791
Upload static cohort csv (#2932)
* Upload static cohort using CSV, closes #2868

* fix tests

* Fix tests

* Fix e2e test

* Avoid double inserts

* Speed up query

* Move to params

* fix tests

* Use JSON instead of protobuf

* unused import

* produce instead of produce_proto

* Insert directly into clickhouse, no need for kafka

* a few quick fixes

* insert in batch to clickhouse

* test SQLi since we can't really trust what we are inserting

* Extra check for duplicates

Co-authored-by: James Greenhill <fuziontech@gmail.com>
2021-01-15 11:19:31 +01:00
Eric Duong
70a6ecb407
Separate math aggregates (#2885)
* separate math aggregates

* add data attr back

* adjust cypress

* make sure tooltip is viewable

* Show total by default

Co-authored-by: Tim Glaser <tim@glsr.nl>
2021-01-11 14:28:29 +01:00
Tim Glaser
e7cf836d59
Merge person modal (#2644)
* WIP merge person

* Warning message

* Fix test

* fix

* Fix small issues
2020-12-10 15:37:30 +01:00
Michael Matloka
1c80aca907
Cleaned up system status page (#2682)
* Polish system status page

* Show system health badge to is_staff users on Cloud

* Update Cypress test

* Correct inconsistent scene name

* Use RDBMS enum instead of constants

* Add "Analytics database in use" to System Status

* Fix typing
2020-12-09 13:57:12 +01:00
Paolo D'Amico
f654a37077
Fix cypress projectSettings (#2674)
* fix projectSettings

* allow /insights or /demo

* fix

* real fix
2020-12-07 11:53:14 +01:00
Tim Glaser
a426b427a4
Cohort table improvements (#2576)
* WIP cohort table improvements

* More fixes

* More fun

* Fix updating cohorts

* Add search box

* thing

* stuf

* Fix multiple exports

* Fix tests

* fix

* fix test

* fix

* fix
2020-12-04 19:50:43 +01:00
Paolo D'Amico
d6f3079bc0
Release actions-ux-201012 (#2615)
* remove legacy code & feature flag references

* ActionStepV2 refactor

* ActionEditV2 refactor

* fix backend tests

* fix more tests

* more fixes

* last fix

* address feedback
2020-12-03 10:59:11 +01:00
Tim Glaser
1dd7f7342b
Use select for numerical properties (#2628)
* Use select for numerical properties

* fix test

* fix isssues
2020-12-02 15:18:50 +01:00
Tim Glaser
7d7dca8f47
Remove signup process from cypress (#2264)
* Remove signup process from cypress

* adds cypress preflight tests

* run migrations before setting up test data

* fix preflight tests

* Update preflight.js

Co-authored-by: Paolo D'Amico <paolodamico@users.noreply.github.com>
2020-12-02 14:12:43 +01:00
Eric Duong
29c952a1ce
remove flake filter by event test (#2580) 2020-11-30 17:36:24 -06:00
GalDayan
000f76a5bd
2094 too many distinct (#2480)
* BUGFIX: re adding feature flag after deleting

* Suppport max array length and show more when need

* refactor

* added 3 distint id to user

* 2 users

* Revert "BUGFIX: re adding feature flag after deleting"

This reverts commit bf9b019b9e.

* added more distinct

* added data-cy and person tests

* fixed tab

* added search for person if not first
2020-11-25 11:12:22 +01:00
Tim Glaser
f47e8b97ae
Combine events and actions into select box (#2394)
* WIP combine events and actions

* Alignment

* Keyboard navigation select box

* Fix enter and other small issues

* add icons

* fix renderinfo

* Hide scrollbar

* Refactor

* Fix cypress test

* fix cypress test
2020-11-24 18:28:44 +01:00
Tim Glaser
e4842f7fed
Feature flag table improvements (#2448)
* Feature flag table improvements

* sorter created by

* fix cypress test
2020-11-23 19:43:03 +01:00
Yakko Majuri
671d1febee
Fix Feature Flags typo (#2463) 2020-11-23 12:07:43 +01:00
GalDayan
f39575d388
Add feature flag filters and roll out precentage to main table (#2387)
* added rollout precentage and filters to main table

* added enable editing

* Seperate to component

* Remove row design

* renamed

* delete unused code

* added typing

* Removed not necessary commits

* prettier ts file

* Formatting

* fix yarn linter

* changed rollout precentage

* changed

* rollbacked the changes

* If there is not roll out percent

* add test on rollout precentage

* refactor

* added filter selectio ntest

* delete unused data-attr

* update attribute

* added filters check
2020-11-20 11:03:14 +01:00
Paolo D'Amico
9ad483064b
Refactor people & users to persons (#2413) 2020-11-17 08:40:48 -06:00
Michael Matloka
33823e8648
Refactor sceneLogic to TypeScript and add dynamic page title (#2361)
* Refactor sceneLogic to TypeScript and add dynamic page title

* Add Cypress checks

* Run prettier

* Fix Cypress checks

* Improve camelCaseToTitle JSDoc

* Move "PostHog" to end of page title

* Use bullet

* Remove actions

* Rerun tests

* Fix new Events page after merge conflict
2020-11-13 17:50:23 +01:00
Tim Glaser
25a053cda4
Manage events view (#2319)
* Finish the local dev w/ proto setup

* WIP manage events view

* Add task, add interface etc

* Move everything to 'manage events' view

* Move all settings into single dropdown (can be reverted)

* Urls for tabs

* Fix migration

* Clickhouse and humanize volume

* Fix cypress test

* Fix sidebar cypress

* Fix cypress again

* Fix some small issues

* Address comments

* Corect naming

* Fix test'

Co-authored-by: James Greenhill <fuziontech@gmail.com>
2020-11-13 14:59:08 +01:00
Tim Glaser
0649615ad7
Closes #2347 Fix shared dashboards (#2351)
* Closes #2347 Fix shared dashboards

* Fix cypress test
2020-11-12 15:31:10 +01:00
Tim Glaser
4dffff5543
1999 improve feature flag ux (#2243)
* #1999 improve feature flag ux

* Fix

* Fix cypress test
2020-11-11 12:22:15 +01:00
Yakko Majuri
b5809139b3
Remove Live Actions Altogether (#2303)
* Remove Live Actions Altogether

* remove backend code

* remove accidental file
2020-11-10 16:35:33 +01:00
Paolo D'Amico
cd251df713
[WIP] New UI (#2114)
Co-authored-by: Michael Matloka <dev@twixes.com>
2020-11-05 12:55:33 +00:00
Marius Andra
fce86ef46d
Plugin v8 (#1946)
* plugin progress

* blah

* add posthog config for plugins

* test gitignore

* new functionality for plugins

* support local plugin paths

* also ignore symlinks

* add positional argument

* fixes

* small fixes

* config polish

* config passed to posthog plugin

* ooooooops

* symlink fix

* cleanse dir before loading

* add cache to plugins

* pickle the goods

* unlink symlink

* pass full config

* unlink even if link points to nothing

* fix fix

* return none if value is empty

* plugin model

* plugins scene

* add config schema to plugins

* install plugins

* save descriptions

* show descriptions

* edit plugin

* save plugin config

* plugin modal

* uninstall plugins

* UX cleanup

* add "required" to plugin config

* open plugin modal after install

* split to subcomponents

* install custom plugins

* rework backend for model plugins

* Plugins on models

* simple reload pubsub

* fix apps not installed

* fix master/main issue

* fix reload command

* use the github api to get the default branch

* init plugins only if not running migrate/makemigrations

* store plugins zip archives in postgres

* tag plugins to specific versions

* save plugins in pluginConfig

* update pluginConfigs instead of adding new rows, remove from redux on uninstall

* remove debug

* run plugins from db by team

* reload when deleting

* remove debug

* smarter handling of dynamic plugins, support local plugins again

* improve typings, add some nicer warnings

* yarn lock file after merge

* squash migrations and add "locked" field to plugins

* error if folder not found in zip

* unregister plugins

* skip plugin init in test mode

* basic plugin test

* avoid mutating the same prop hash

* add pip tools to requirements.txt

* fix mypy, fix manage.py script error

* avoid plugins with mypy

* mypy fix

* abstract redis into plugin and add team_id to reload

* refactor and start work on syncing with posthog.json

* start testing plugin loading from json

* test plugin deletion

* test for syncing plugins from config

* complete and then test local json plugin sync

* test converting back and forward between an local and http path

* remove global plugin config from plugins array in posthog.json

* rename configSchema --> config_schema

* fix migration after merge

* rename from_cli to from_json

* mypy

* import pip after plugin loaded

* show error details

* raise exceptions visible to the frontend

* sync plugins on load

* access control to updating plugins from the web

* access control

* remove posthog.json from git

* test config schema from json

* if you can install via the web, you can also configure

* remove separate view access

* title as "Plugins" instead of "Installed Plugins" if we can't install ourselves and don't see the repository

* add self.team to plugin base class

* add instance_init method

* refactor into files

* sync global plugin config from json

* make global plugins work, add test

* global plugins in interface, make them take precedence over local plugins

* add comments to plugin base class

* reload/reset plugins before each test

* add error field to plugins

* add many plugin zips

* add many plugin zips, fix imports

* store errors on plugin object and test them

* fix types

* add null to error

* can be with any team ID in the test

* save problems running plugins in the plugin_config model

* try to create redis connection pool only once

* throw if no redis

* mypy

* get instance inside heartbeat and not top level

* try caching pubsub

* try pip install with -q

* install pip externally

* remove uuid and typing, now in stdlib

* more verbosity

* add pip back

* catch exceptions

* quiet and no input for pip

* check plugin reload every 10sec on new task

* fix type errors

* fix requirements error message

* use repository.json

* only load and reload plugins on workers

* rename task

* support local js plugins via py-mini-racer

* load js plugins from zip files

* extract jsplugin class and convert to syntax that uses global functions instead of initializing a class

* process events via grpc

* process events with the "posthog-plugins" queue to enable plugins

* remove old native python & mini racer plugin code

* default to false

* change env vars

* fix test

* remove grpc tools

* skip plugins in migrate.py scripts

* fix migration

* change output of settings debug banner to STDERR

* start posthog plugin server with worker

* try to fix python 3.7 test

* add fallback for the optional argument

* annoying CI test debug

* try to finally fix python 3.7 test

* here we go again

* move plugins under instance

* move plugins npm start into its own folder

* more console.log debugginf

* and again

* move plugins to separate script

* more prints

* fix test error

* docker config

* small fixes

* dckerfile fix

* reload plugins via pubsub, upgrade version

* plugins that support team setup code

* sync if made changes from config

* move plugins in menu

* require node 14 in heroku for better plugin support (namely ?. support)

* bump node version in dockerfiles

* update node versions for github actions

* update the concurrency for heroku workers

* update the concurrency for heroku workers (add link)

* Fix migrations after merge

* add ignore_result to process_event tasks

* fix: docker-preview run in parallel bug

* change order of commands

* remove separate plugins server conf script

* clarify intent

* revert castaway change

* add context to plugins/sync.py

* change everything to ValidationError

* delegate destroy to super

* no request to repository url if can't install

* make the if cleaner

* add clarifying line

* add clarifying line

* fix url field type

* rename get_redis_instance to get_client, move to posthog.redis

* remove duplicate validation

* flip if around

* simplify api logic

* simplify plugin_config api, fix global_plugin error

* remove unnecessary field rename

* mypy

* Plugins UI (#2090)

* base UI

* more UI

* load plugin image if available

* toggle enabled plugin

* plugin cards for available

* custom plugins

* change plugin configuration to drawer

* asks for confirmation when enabling or disabling a plugin

* loading state

* separation of concerns, leave new styles for separate PR

* general improvements

* remove button when installation is not available

* preemptively avoid merge conflict with #2114

* move papercups widget & hide bottom bar when drawer is open

* allow clicking the entire plugin card

* address all feedback

* move plugins under "project" menu

* Hide "configure" from globally enabled plugins

Co-authored-by: Marius Andra <marius.andra@gmail.com>

* add plugins opt in toggle to project/plugins

* choose pipeline based on team setting

* add "beta"

* plugin opt-in opt-out pages

* adjust install button

* remove tasks that are never called, remove PLUGINS_ENABLED global key

* fix responsive card display

* fix typo and drawer width

* skeleton fixes

* typo

* use "posthog-plugin-server" npm package

* "posthog-plugin-server" doc

* require the plugin server to be online before enabling plugins

* remove a few needeless "?." cases

* add hint for config_schema

* add hint for errors

* show plugin errors

* stop clicks if clicking on error

* show plugin errors

* loading indicators

* reload plugins when opting in/out

* nicer beta tag

* add frontend type

* fix mypy error

* fix test

* disable plugins if MULTI_TENANCY

* upgrade plugin-server version

* save event with plugin error

* upgrade plugin server

* squashed & optimized migrations

* remove unused import

* updates opt-in copy & hides tech details for cloud version

* fix cypress tests

* compare with None

* change plugins url and add redirect

* remove ellipsis

* use code snippet in plugin errors

* change github regex

* fix loading flickering on installing plugins

* add comment to plugin archive

* fix python style

* remove pip-tools (relic from the python plugin era)

* hard pin plugin server version

* remove copying of posthog.json from dev dockerfile (breaks if file doesn't exist, copied later anyway)

* update lockfile

Co-authored-by: James Greenhill <fuziontech@gmail.com>
Co-authored-by: Paolo D'Amico <paolodamico@users.noreply.github.com>
2020-11-02 15:08:30 +01:00
Karl-Aksel Puulmann
934d887915
Fix cypress tests (#2070)
* Fix cypress tests

* Use latest cypress gh action
2020-10-28 16:13:07 +02:00
Paolo D'Amico
06d7671e3c
Dashboard templates & first default dashboard (#1942)
Co-authored-by: Ahti Kitsik <ak@ahtik.com>
2020-10-28 11:41:24 +00:00
Marius Andra
e4895ba80a
Cohorts Test (#2003)
* test creating and listing cohorts

* try to fix flakyness by clicking the dropdown item even if it's not visible
2020-10-23 15:52:59 +02:00
Karl-Aksel Puulmann
2812aa25ff
Fix cypress tests (#1986)
people.js was done by the refactoring/renaming being done in
533c7df105
2020-10-22 15:42:38 +02:00
Michael Matloka
533c7df105
Organization<>Team<>User structure (closes #1540) (#1562)
* Backend changes to implement #1461

* Added the missing migration files

* Fixes Typecheck errors

* Refactor request.user.team_set.get() to use request.user.team

* Updated user patch method to change current_team on team id instead of name

* Merged migration file

* Changes team property to return first item in queryset

* Fixes failing tests

* Changed User api to return the ids of the teams they are currently part of

* Frontend for changing teams

* Update and simplify migrations

* Improve team and user buttons

* Make team changing backend more logical

* Improve current_team mechanics

* Update test_team.py

* Fix Team.objects.create_with_data

* Update migration

* Update tests

* Make setup_review more convenient

* Add Organization and OrganizationMembership

* Replace is_admin with level

* Extend API

* Update team.py

* Improve modeling

* Improve handling of new mechanics

* Add proper migration

* Remove _ensure_organization_and_team

* Update 0084_org_team_user.py

* Improve user, org and team creation

* Make MembershipLevel more flexible for the future

* Add member deletion

* Fix naive datetime warnings

* Update setup_review.py

* Update API route

* Make PersonalAPIKey changes

* Update models and migrations, fix typing

* Fix typing

* Use MAC-less UUID v1 instead of v4 for better performance

* Add abstract UUIDModel

* Update utils.py

* Update utils.py

* Fix multi/unicast bit

* Update APIs, frontend and tests

* Update pull_request_template.md

* Fix comment

* Fix migration error

* Compress migrations

* Updates with minimal renaming

* More updates

* Make further updates

* Update test_team_user.py

* Fix issues

* Add migration

* Satisfy mypy

* Remove Signup redirect on logged in

* Use uuid1_macless in Person

* Fix typing

* Update tests

* Update /api/team/signup to /api/organization/signup

* Fix mypy issues and update tests

The remaining failures are actually missing functionality (TDD applied), so filling these in.

* Update 0086_org_live

* Make small improvements

* Implement permissions

* Remove now unneccesary membership check

* Update setup_dev.py

* Make small frontend improvements

* Add drf-nested-routers as requirement

* Remove unused import

* Implemented nested routes

* Remove cruft

* Add relevant org/proj/user name to headings

* Fix imports

* Update migration

* Replace unreliable drf-nested-routers with drf-extensions

* Improve unset team handling

* Make org and team creation proper

* Update migration

* Fix migration

* Update TopContent

* Update command palette for new sidebar structure

* Remove deprecated demo data deletion

* Assume that each org has a project and fix typing

* Require paid plan for multiple orgs and projects

* Make HogFlix demo a separate team

* Update migration

* Slightly improve style

* Adjust page layout bottom padding

* Make user dropdown nicer

* Fix base app tests

* Satisfy mypy

* Fix test_leave_organization

* Improve wording

* Possibly fix import

* Remove misplaced None check

* Enhance org and teams APIs and add tests

* Fix /api/projects for particular Team

* Improve invites and demo data

* Address feedback

* Put everything related to billing on Organization

* Fix minor issues

* Simplify invitation creation

* Update team model

* Make orgs and projects premium only on self-hosted

* Improve testing

* Update migration

* Remove extra License import

* Fix minor issues

* Fix Django tests

* Fix Cypress

* Fix yarn build

* Fix TeamSignupViewset

* Fix posthog-production incompatibility

* Remove extraneous insight endpoint registration

* Adjust tests for posthog-production

* Simplify invitations and fix email validation

* Address all feedback

* Satisfy mypy

* Update migration

* Fix constraint removal in migration

* Update tests

* Fix test creation edge case

* Run posthog-production CI tests against this branch and teams-live

* Ensure that js_posthog_api_key is always passed

* Fix preflight check pre-login

* Update cypress tests

* Update instanceStatus.js

* Bring ee tets up to par

* Bring actions-ux-201012 back

* Cypress retry in cypress.json

* Revert "Run posthog-production CI tests against this branch and teams-live"

This reverts commit d79cb844d8.

Co-authored-by: anna <ms.annaphilips@gmail.com>
Co-authored-by: Anna Philips <aphilips@matmacorp.com>
2020-10-22 10:58:32 +02:00
Ahti Kitsik
3e1f06fe58
System Status page and API (#1812). (#1875)
* System Status page and API (#1812).

* More resilient to Redis outage. Ensure the table gets loaded.

* Bugfix and reworded.

* Using kea-typegen now and removed a " ".
2020-10-15 12:34:32 +02:00
Karl-Aksel Puulmann
c24c58828f
Upgrade cypress, fix and stabilize tests (#1872)
* Upgrade cypress

- https://docs.cypress.io/guides/references/migration-guide.html#Migrating-to-Cypress-5-0
- https://docs.cypress.io/guides/references/changelog.html#5-0-0

* Run tests multiple times if flaky

* Fix broken command palette cypress test

* Remove default retries options
2020-10-14 15:36:25 +03:00
Yakko Majuri
38135ba73a
fix feature flags test (#1858) 2020-10-14 10:01:17 +03:00
Michael Matloka
f71e011a86
Command palette (#1819)
* add hotkey base

* add platform check

* Rename CommandBox to CommandPalette

* Add styled-components

* Restructure CommandPalette and add Esc handling

* Update utils.js

* add search box

* Add logic types

* Implement base logic

* Fix scroll prevention

* Update logic and add goto command base with Fuse fuzzy serach

* ux hotkey

* Implement command (de)registration

* minor fix

* base UI

* error message & hints

* command groups UI

* Add commands search

* Make commands work

* Prepare palette for fuzzy search and add basic labeling

* ui adjustments

* ui

* Improve colors

* switch to global command

* Optimize resolution

* global go to commands

* abstract item selection logic to command palette

* Update casing and types

* Add conditional useCommands

* Improve results

* keyboard nav

* keyboard nav fix

* removed double fuse (synonyms broken)

* Update style

* Fix highlighting

* Remove extra style

* conditional go to commands

* add mouse hover handling and rename functions

* remove mac check

* add more commands

* added insights stub pages

* Add command components

* refactor logic

* Update styling

* Remove extraneous `input`

* load custom dashboards to command palette

* Add input styling

* Add write icon

* Refactor results

* minor adjustments

* add person search

* remove papercups fully

* fix input indexing

* fix result executing empty

* Add command grouping and improve navigation

* add urls

* make logic explicit

* fix error with hadnler

* Remove redundant border-top

* add trend functions

* personal api key stub

* Add command palette toggle button

* Fix things

* fix personal api keys

* copy api key to clipboard

* Add toggle text

* Improve palette UX and perform refactoring

* Improve UX and add palette usage reporting

* tests refactor

* filter person list

* refactor api person tests

* add squeak

* deprecate by_distinct_id & by_email person endpoints

* Optimize squeak

* fix typegen error

* use new filters in frontend

* Optimize squeak

* key identifier refactor

* fix mypy

* removed unused code

* Make custom command UI more coherent

* Add calculator to palette

* Use equal sign

* Make palette button nicer

* Add lodash back officially and show palette suggestions

lodash is still used in a few places, but it was not in package.json. The reason this was working was that lodash is a dependency of some other depedencies, but this was fragile. It's still not ideal to use this, but at least this is now not a hack the way it was.

* Remove isHint

* Optimize graph time range command

* Move command results grouping to Kea logic

* Fix result focus autoshift

* Improve palette result focusing

* Adjust for window.posthog being optional

* add test for third-party person filters

* Remove styled-components in favor of .scss files

* Remove redundant container class

* Use insect (sic!) squeak instead of pig squeak

* Show only unique palette results

* Fix palette overlay

* Add powerful command building protocol CommandFlow

* Fix minor issues

* Always show scope when flow active

* Use custom label icon

* Add feedback sharing command

* block command input from being captured in screen recording

at least until we can figure out how to capture this info in a privacy-preserving way

* Hide palette button on narrow screens

* Improve responsiveness

* Fix palette feedback sending

* Fix Esc handling

* Add Message Sent info

* Fix Message Sent info

* Fix dashboard creation and null name handling

* Rename Cy tests to JS convention

* Add basic Cypress test

* Address feedback

Co-authored-by: Eric <eeoneric@gmail.com>
Co-authored-by: Paolo D'Amico <paolodamico@users.noreply.github.com>
2020-10-13 15:44:56 +02:00
Yakko Majuri
f117b66ebe
Add option to delete feature flags (#1761)
* frontend-only changes for deleting flag

* added flag deletion logic

* updated cypress tests

* capitalize feature flag col titles

* fixed issue

* added undo button

* Remove deletion confirm modal and improved undo experience

Co-authored-by: Michael Matloka <dev@twixes.com>
2020-10-13 12:47:46 +02:00
Yakko Majuri
bb1d44531f
Session Recording tests (#1827)
* added backend tests for sessions endpoint

* added cypress tests for person

* rerun tests

* updated backend tests

* Fix tests

Co-authored-by: Karl-Aksel Puulmann <oxymaccy@gmail.com>
2020-10-08 18:25:52 +03:00
Yakko Majuri
4cb64d0c74
Fix Cypress tests (#1635)
* added timeouts and waits to ensure flow of cypress tests

* removed unused test

* fixed trends elements tests

* testing a longer wait time - temp

* fix trends sessions and retetion filtering tests

* fix events filtering test

* removed wait

* trends sessions fix

* minor update

* fix live actions & sessions

* improve timeouts

* more timouts

* removed some waits

* added timeouts to trends tests

* modify config

* remove test on bug

* removed timeout from events table

* remove dashboards timeout

* change selector for sessions tab

* use data-attr
2020-09-18 09:26:12 -04:00
Paolo D'Amico
cf2ec2894c
Signup improvements (#1535)
Co-authored-by: Yakko Majuri <yakko.majuri@gmail.com>
Co-authored-by: Michael Matloka <dev@twixes.com>
2020-09-07 09:23:13 -05:00
Eric Duong
c20df2905f
Consolidate insight api (#1498)
* add insight history

* add table

* edit format

* links working

* add modal

* add tab switch

* saving insights

* remove insights model

* no model for insight history

* initial working

* remove wrong typegen

* made the history per user

* missing param

* added funnel support

* add details

* add delete saved insight functionality

* add line break logic and funnel name

* fix reload logic

* fix rendering error

* add pagination component

* fix bugs

* add backend tests

* add insight-history-panel check

* add drawer and replace table

* add loading next

* add date

* add callback

* update test

* use table

* fix spacing

* fix rows

* adjust spacing

* fix spacing and styling

* fix spacing and styling

* main funnel-insight page working

* consolidated funnels

* refactor funnel dashboard item

* dashboard modals working

* update demo creation

* updated migration

* fix frontend for funnels

* remove funnel code and fix bugs

* fix test and remove caching temp

* remove old tests

* fix types

* added panel for past funnels

* implement polling for funnel refactor

* .

* fix dashbaord item bug

* add params

* fix params

* clean up caching functionality

* fix types

* caching working properly

* fix dashboard update bug

* fix migrations

* .

* fix check

* add missing package

* update caching to work properly

* Fix default

* fix api and styling for insight history

* more spacing

* initial refactor paths to queries and consolidate into /insight

* missing param for paths

* move path tests

* change frontend endpoints

* add comments about specific parameters

* minor tune up

* fix name

* typed filter and paths

* typed retention

* more typing and standardization

* fix tests

* cleanup

* update funnel automatically

* update tests

* fix clear condition

* merge insight history

* return save functionality

* remove file

* fix path params and tests

* add tests

* fix type
2020-09-01 15:19:15 +02:00
Yakko Majuri
ba4a752646
Close #1292: Added tabs for distinguishing between different users (#1382)
* #1292: Added tabs for switching between user types in People

* updated fetchPeople implementation

* refactored and fixed pagination

* fixed search query across tabs issue

* updated api query param for person

* added tests

* added tests & fixed queries

* added cypress tests

* Improve code style

* Improve regex and add compatilibity with demo data

* Improve variable naming

* Switched user identifying mechanism

* made it demo friendly

* Improved method for identifying users, added tests

* fixing minor mistakes

* made cypress test more robust

* cypress test update

* fixed migrations conflict

* updated cypress tests

* Optimize process_event conditions

* Update comment

* Make _set_is_identified more versatile

* Update demo.py

* Rename queryset_anonymous_pass

* Improve rudimental identification detection

* User kea-router for All Users category tab

* Optimize People

* Make category play well with cohort in People

* Simplify way of filtering by identification

* Remove need for deep copy

* Check location in People tabs E2E test

* Update test_process_event.py

* Black test_process_event.py

* Fix test_set_is_identified

* Try E2E test with cy.wait(200)

* Try E2E with more waiting

* Don't check location in E2E test

* Add test_category_param

* Update migration

Co-authored-by: Twixes <dev@twixes.com>
2020-08-25 01:58:12 +02:00
Eric Duong
b172eee920
Insight history (#1379)
* add insight history

* add table

* edit format

* links working

* add modal

* add tab switch

* saving insights

* remove insights model

* no model for insight history

* initial working

* remove wrong typegen

* made the history per user

* missing param

* added funnel support

* add details

* add delete saved insight functionality

* add line break logic and funnel name

* fix reload logic

* fix rendering error

* add pagination component

* fix bugs

* add backend tests

* add insight-history-panel check

* add drawer and replace table

* add loading next

* add date

* add callback

* update test

* use table

* fix spacing

* fix rows

* adjust spacing

* fix spacing and styling

* fix spacing and styling

* .

* add missing package

* Funnel refactor (#1381)

* main funnel-insight page working

* consolidated funnels

* refactor funnel dashboard item

* dashboard modals working

* update demo creation

* updated migration

* fix frontend for funnels

* remove funnel code and fix bugs

* fix test and remove caching temp

* remove old tests

* fix types

* added panel for past funnels

* implement polling for funnel refactor

* .

* fix dashbaord item bug

* add params

* fix params

* clean up caching functionality

* fix types

* caching working properly

* fix dashboard update bug

* fix migrations

* fix check

* update caching to work properly

* Fix default

* fix api and styling for insight history

* more spacing

* update funnel automatically

* update tests

* fix clear condition

* merge insight history

* return save functionality

* remove file

* added extra save functionality
2020-08-24 17:02:13 -04:00
Yakko Majuri
acaf1a59d0
Fixed broken Cypress tests (+ made it all much faster!) (#1486)
* Fixed and improved Cypress tests

* Try with even less cy.wait

* Fix selector

* Add back some cy.wait

Co-authored-by: Twixes <dev@twixes.com>
2020-08-22 18:03:12 +02:00
Michael Matloka
49a15e9f53
Enhance and optimize PR GitHub workflows (#1365)
* Enhance and optimize GitHub workflows

* Prettier app.json

* Update YAML list

* Prettier workflows

* Include YAML in prettier runs

* Improve job naming

* Update E2E workflow name

* Prettier docker-compose YAML

* Update workflows

* Put freezegun into prod requirements

* Update workflow names

* Update workflow names again

* Update ci-backend.yml

* Update Lint with flake8

* Remove redundant eslint:ci script

* Revert "Put freezegun into prod requirements"

This reverts commit 460e3942d10194e9f46c8a2196ebd9ecc1f23c6f.

* Install freezegun in workflow and update dev.txt

* Prettier auto-image.yml

* Add "CI" to ci-* names

* Fix prettier:check

* Add missing SECRET_KEY

* Prettier 2 last files
2020-08-18 11:08:40 +02:00