Commit graph

316 commits

Author SHA1 Message Date
Alejandro Celaya
2d5c2779c3 Moved helper functions to render progressive paginators to a common place 2020-03-28 17:25:12 +01:00
Alejandro Celaya
06db4f6556 Used progressive pagination for the short URLs list 2020-03-28 17:19:33 +01:00
Alejandro Celaya
4a69907ca3 Fixed generation of component keys to make them render properly 2020-03-08 10:16:45 +01:00
Alejandro Celaya
f55d3a66aa Converted ShortUrlsRow component into a functional component 2020-03-06 21:44:03 +01:00
Alejandro Celaya
fba156b271 Moved copy-to-clipboard control next to short URL 2020-03-06 21:25:30 +01:00
Alejandro Celaya
be50b24504 Added mechanism to provide a version to shlink-web-client 2020-03-05 12:53:32 +01:00
Alejandro Celaya
1e949b3a22 Added shlink versions to side menu 2020-03-05 11:11:26 +01:00
Alejandro Celaya
fa0d3d4047 Removed no longer needed async/await when building api client 2020-03-05 09:23:53 +01:00
Alejandro Celaya
bc8905ee7f Ensured server is properly loaded before trying to render any children component 2020-03-05 08:59:07 +01:00
Alejandro Celaya
666d2d3065 Ensured domain is dispatched when modifying a short URL somehow 2020-02-08 10:46:11 +01:00
Alejandro Celaya
098c94bccf Ensured domain is passed when deleting a short URL on a specific domain 2020-02-08 09:57:18 +01:00
Alejandro Celaya
861a3c068f Ensured domain is passed when editing meta for a short URL on a specific domain 2020-02-08 09:52:30 +01:00
Alejandro Celaya
3b95e8ebc0 Ensured domain is passed when editing tags for a short URL on a specific domain 2020-02-08 09:48:35 +01:00
Alejandro Celaya
dc672bf0f0 Ensured domain is passed when loading visits for a short URL on a specific domain 2020-02-08 09:07:55 +01:00
Alejandro Celaya
3e298f010b Simplified DeleteShortUrlModal component and shortUrlDeletion reducer 2020-01-31 20:12:22 +01:00
Alejandro Celaya
30117bd121 Simplified EditTagsModal component and shortUrlTags reducer 2020-01-31 20:06:28 +01:00
Alejandro Celaya
c53520ae56 Moved logic to dynamically render components based on server version to a separated component 2020-01-28 19:46:36 +01:00
Alejandro Celaya
f3154e770e Fixed maxVisits being set to 0 when trying to reset it 2020-01-28 18:36:23 +01:00
Alejandro Celaya
5762342d6c Ensured edit meta menu item is only displayed when shlink v1.18 or greater is run 2020-01-19 21:30:01 +01:00
Alejandro Celaya
2236ed467e Ensured date range filtering is only displayed if Shlink v1.21 ow higer is run 2020-01-19 21:25:45 +01:00
Alejandro Celaya
f52bcc5389 Ensured state is reset on edit meta modal after closing it 2020-01-19 20:37:12 +01:00
Alejandro Celaya
d44a4b260e Finished component to allow metadata to be edited on existing short URLs 2020-01-19 13:07:33 +01:00
Alejandro Celaya
80a8e0b55c Created component to edit short URLs meta 2020-01-17 21:07:59 +01:00
Alejandro Celaya
2d60f830f7 Improved icons on short URL menu 2020-01-15 20:25:58 +01:00
Alejandro Celaya
301da4bb2a Recovered behavior to show amount of visits in selected date range on visits detail page 2020-01-15 18:31:28 +01:00
Alejandro Celaya
c90cd46095 Removed old ExternalLink component in favor of external one 2020-01-15 18:16:12 +01:00
Alejandro Celaya
5eb4a3adec Fixed tests and typos 2020-01-14 20:12:30 +01:00
Alejandro Celaya
b60908a5e9 Added filtering by date to short URLs list 2020-01-14 19:59:25 +01:00
Alejandro Celaya
124441238b Moved style to the proper scope 2020-01-12 12:08:26 +01:00
Alejandro Celaya
3f2162fe62 Extracted visits count component to reuse it in other places 2020-01-11 19:58:04 +01:00
Alejandro Celaya
5c4fec5a2f Displayed amount of max visits on those URLs which have it 2020-01-11 19:40:16 +01:00
Alejandro Celaya
0920962d72 Used already unpacked property 2020-01-11 14:16:23 +01:00
Alejandro Celaya
de41f50945 Ensured preview menu item is hidden when consuming Shlink 2 2020-01-11 14:12:58 +01:00
Alejandro Celaya
ba8cade6fc When handling API errors, use the type prop and fallback to error if not found 2020-01-11 12:24:45 +01:00
Alejandro Celaya
ce9ecd7b93 Defined custom function to compare versions which defines the operator in the middle 2019-10-05 11:03:17 +02:00
Alejandro Celaya
354d19af1b Disabled domain component for Shlink versions not supporting it 2019-10-05 10:54:58 +02:00
Alejandro Celaya
4120d09220 Loaded version of selected server and created component to filter content based on that version 2019-10-05 10:20:33 +02:00
Alejandro Celaya
67a23bfe33 Added domain input to create short url form 2019-10-05 09:02:02 +02:00
Haocen Xu
ab99213d8c When no order is specified, the order by indicator(triangle) in column header should be Cleared 2019-09-14 18:13:15 -04:00
Alejandro Celaya
fb94077260 Created shortUrlTags reducer test 2019-05-19 13:22:16 +02:00
Alejandro Celaya
7b80d78dc5 Removed duplicated code when building ShlinkApiClient 2019-04-21 11:31:40 +02:00
Alejandro Celaya
ce0f036bef Created custom react hook that can be used to handle toggles 2019-03-17 18:35:47 +01:00
Alejandro Celaya
f4dbd03c7e Added checkbox to control the findIfExists shlink flag 2019-03-17 17:48:05 +01:00
Alejandro Celaya
232c059e4f Replaced usages of defaultState by initialState 2019-03-17 10:11:20 +01:00
Alejandro Celaya
5bb9d15e27 Refactored tagEdit reducer to take advantage of redux-actions 2019-03-17 10:07:28 +01:00
Alejandro Celaya
7ff7318089 Refactored shortUrlTags reducer to take advantage of redux-actions 2019-03-17 09:32:53 +01:00
Alejandro Celaya
4654bff737 Refactored shortUrlDeletion reducer to takle advantage of redux-actions 2019-03-17 09:27:01 +01:00
Alejandro Celaya
3075ccb4b9 Refactored shortUrlCreation reducer to takle advantage of redux-actions 2019-03-17 09:20:02 +01:00
Alejandro Celaya
4894ab9035 Refactored shortUrlsListParams reducer to takle advantage of redux-actions 2019-03-17 09:15:58 +01:00
Alejandro Celaya
4a09d99322 Refactored shortUrlsList to take advantage of redux-actions 2019-03-17 09:11:37 +01:00
Alejandro Celaya
83704ca4b5 Created rangeOf helper function which does a range + map 2019-03-09 12:19:33 +01:00
Alejandro Celaya
e303a80683 Updated bootstrap to solve security issue 2019-03-04 21:05:30 +01:00
Alejandro Celaya
d020ed0b13 Created ShortUrlsRowMenu test 2019-01-13 13:08:47 +01:00
Alejandro Celaya
30b4cb4068 Created ShortUrlsRow test 2019-01-13 09:49:02 +01:00
Alejandro Celaya
8b8be2d7ca Updated stateFlagTimeout to get the setTimeout function injected as a dependency 2019-01-08 20:49:47 +01:00
Alejandro Celaya
08488e9bad Imported config files and start script from new create react app 2019-01-05 22:54:54 +01:00
Alejandro Celaya
835d54e90c Updated dependencies and source code 2019-01-05 22:25:54 +01:00
Alejandro Celaya
8a9a4f40a7 Created shortUrlsList reducer test 2018-12-21 10:58:51 +01:00
Alejandro Celaya
16cf30f26f Created EditTagsModal component test 2018-12-21 10:34:12 +01:00
Alejandro Celaya
9268114fe1 Created shortUrlDeletion reducer test 2018-12-21 10:02:42 +01:00
Alejandro Celaya
4b1f5e9f4c Extracted short-url related services to its own service provider 2018-12-18 20:00:23 +01:00
Alejandro Celaya
cf1239cf6e Moved all server-related services to its own service provider 2018-12-18 19:45:09 +01:00
Alejandro Celaya
471322f4db Implemented dependency injection in all tag related components 2018-12-18 11:28:15 +01:00
Alejandro Celaya
4f54e3315f Simplified ShlinkApiClient and moved runtime creation logic to external service 2018-12-18 10:14:25 +01:00
Alejandro Celaya
12ddeebedf Registered first actions as services 2018-12-18 04:54:32 +01:00
Alejandro Celaya
bab1e57ab1 Registered remaining short URLs components in DI container 2018-12-17 23:11:55 +01:00
Alejandro Celaya
5616d045ab Migrated a lot more components to new DI system 2018-12-17 22:18:47 +01:00
Alejandro Celaya
07b1d5be2e Created shortUrlCreation reducer test 2018-11-01 14:55:30 +01:00
Alejandro Celaya
85cb849ba5 Created TagCard test 2018-11-01 13:34:31 +01:00
Alejandro Celaya
53132fa900 Created CreateShortUrl test 2018-11-01 13:15:09 +01:00
Alejandro Celaya
1697ef9306 Created QrCodeModal test 2018-11-01 12:35:51 +01:00
Alejandro Celaya
79a16a2c2c Created PreviewModal test 2018-11-01 12:34:18 +01:00
Alejandro Celaya
30192cb349 Created DeleteShortUrlModal test 2018-11-01 12:24:16 +01:00
Alejandro Celaya
cccf57a35a Moved DateInput from common to utils 2018-11-01 09:05:20 +01:00
Alejandro Celaya
368de2b4c7 Added order control to countries graph 2018-10-28 22:54:08 +01:00
Alejandro Celaya
6634fc41c5 Fixed short urls dropdown menu not properly located 2018-10-28 21:51:54 +01:00
Alejandro Celaya
4ad8e909d4 Extracted sorting dropdown to its own component 2018-10-28 21:26:47 +01:00
Alejandro Celaya
7d665f3933 Ensured tags returned from server are used after editing short URL tags in order to use the normalized values 2018-09-16 12:48:28 +02:00
Alejandro Celaya
fc1af04243 Created tests for Paginator and SearchBar 2018-09-16 12:18:02 +02:00
Alejandro Celaya
f2d03203ae Implemented short URLs deletion 2018-09-16 10:47:17 +02:00
Alejandro Celaya
2d6dda3576 Created delete short URLs modal 2018-09-16 09:35:39 +02:00
Alejandro Celaya
9b3bfe56bb Ensured list filtering params are reset when list component unmounts 2018-09-16 09:01:05 +02:00
Alejandro Celaya
b7ca32ff8f Moved visits-related elements to visits folder 2018-09-02 11:10:59 +02:00
Alejandro Celaya
b454810357 Moved tag helper components from utils to tags/helpers folder 2018-09-02 11:10:59 +02:00
Alejandro Celaya
0b089e24de Moved propTypes and defaultProps as static properties in class components 2018-09-02 11:10:59 +02:00
Alejandro Celaya
850630092a Fixed selected tags lost when chaning page 2018-09-02 10:39:26 +02:00
Alejandro Celaya
34c5a0ef8f Removed duplicated code by creating a helper function 2018-08-27 16:45:46 +02:00
Alejandro Celaya
933de6e2c5 Fixed event handlers not properly called 2018-08-26 19:30:56 +02:00
Alejandro Celaya
2fdc7a0ff0 Fixed shape types not properly defined as shapes but as plane objects 2018-08-26 19:19:45 +02:00
Alejandro Celaya
c0e116b17b Disabled specific eslint rules in small blocks 2018-08-26 10:49:23 +02:00
Alejandro Celaya
9b668f3365 Simplified Paginator component 2018-08-25 23:45:03 +02:00
Alejandro Celaya
6a016d8e6f Updated styles in javascript to fulfill adidas rules 2018-08-25 23:39:27 +02:00
Alejandro Celaya
ed0aa68452 Fixed linting issues in stylesheets 2018-08-25 15:59:51 +02:00
Alejandro Celaya
6d0753481d Refactored visits parser to be functional 2018-08-24 23:55:53 +02:00
Alejandro Celaya
26a3fdfd3d Created VisitsParser test 2018-08-24 23:38:37 +02:00
Alejandro Celaya
843c121285 Extracted SearchField from SearchBar component to its own component 2018-08-19 20:29:23 +02:00
Alejandro Celaya
2650027c40 Updated tags list, allowing to click on a tag to show the list filtered by that tag 2018-08-18 17:34:49 +02:00
Alejandro Celaya
680d80d753 Prevented short URLs list to be reloaded when tags are edited 2018-08-18 17:14:33 +02:00
Alejandro Celaya
f7f0d8c7c1 Improved tags list section 2018-08-16 19:19:57 +02:00
Alejandro Celaya
49290b56ee Created tags list page 2018-08-16 18:59:00 +02:00
Alejandro Celaya
03113583f0 Updated behavior on tags modal so that the component handles all actions 2018-08-15 19:10:35 +02:00
Alejandro Celaya
a1eadf767e Updated short URL tags adding real behavior 2018-08-15 18:44:54 +02:00
Alejandro Celaya
854851fefc Created common component to handle tags and modal to edit tags 2018-08-15 11:14:44 +02:00
Alejandro Celaya
adec759579 Added workaround to add tags on blur on tags input which allows tags to be added on Android 2018-08-12 19:07:42 +02:00
Alejandro Celaya
f8eb5fb022 Creates shortUrlsListParams reducer test 2018-08-12 18:50:19 +02:00
Alejandro Celaya
ec4c14e8de Created selectedServer reducer test 2018-08-12 09:22:18 +02:00
Alejandro Celaya
c920403d5f Deleted no longer needed styles sheet 2018-08-11 21:41:01 +02:00
Alejandro Celaya
e1008fcff1 Replaced tags input component by a simpler one 2018-08-11 21:39:27 +02:00
Alejandro Celaya
7efc09d73c Improved badge color 2018-08-11 18:27:51 +02:00
Alejandro Celaya
b3be7df890 Improved tags filtering control 2018-08-10 22:27:50 +02:00
Alejandro Celaya
c80fea2877 Added ordering control to short URLs list in mobile resolutions 2018-08-10 22:16:50 +02:00
Alejandro Celaya
e4d5424c07 Fixed short URLs ordering in desktop resolutions 2018-08-10 21:38:24 +02:00
Alejandro Celaya
3821735a89 Updated DateInput to be clearable 2018-08-09 20:13:46 +02:00
Alejandro Celaya
6f38538dea Improved responsiveness in visits page 2018-08-09 19:50:22 +02:00
Alejandro Celaya
554779a173 Fixed pagination control not being properly wrapped in mobile devices 2018-08-05 10:12:55 +02:00
Alejandro Celaya
14b98fd833 Improved context menu in mobile devices 2018-08-05 10:08:17 +02:00
Alejandro Celaya
ce8888ce5d Replaced double quotes with single quotes in sass imports 2018-08-05 10:01:17 +02:00
Alejandro Celaya
b25cb6c170 Added more responsive improvements 2018-08-05 08:49:07 +02:00
Alejandro Celaya
9575107848 Configured redux dev tools 2018-08-05 08:13:12 +02:00
Alejandro Celaya
3c0f1716aa Fixed responsive properties 2018-08-04 17:52:56 +02:00
Alejandro Celaya
ee6193ace8 Added support to filter by multiple tags 2018-08-04 17:07:44 +02:00
Alejandro Celaya
5517fcdde5 Fixed changing selected server 2018-08-04 08:24:58 +02:00
Alejandro Celaya
daf67e1d43 Fixed typo 2018-08-01 19:15:45 +02:00
Alejandro Celaya
bbeaf01319 Created filtering by tag feature 2018-08-01 19:04:58 +02:00
Alejandro Celaya
eef1946243 Used setState callback to ensure no race conditions occur 2018-08-01 18:32:21 +02:00
Alejandro Celaya
0b15fba640 Added filtering by date range to visit stats page 2018-07-31 22:04:20 +02:00
Alejandro Celaya
a7bd66827a Created reusable DateInput component 2018-07-31 21:24:34 +02:00
Alejandro Celaya
1abcb2e1d7 Fixed visits graphs styles 2018-07-31 20:36:27 +02:00
Alejandro Celaya
0f34d473b9 Ensured regular data for a short URL is loaded if defined 2018-07-30 21:34:06 +02:00
Alejandro Celaya
13004f6d57 Removed duplicated code from ShortUrlVisits 2018-07-30 21:12:06 +02:00
Alejandro Celaya
1b97877ecf Improved styles by using Cards 2018-07-30 20:54:06 +02:00
Alejandro Celaya
d97cbdde5d Defined how to parse visit stats and how to render them 2018-07-30 20:31:48 +02:00
Alejandro Celaya
a75c7309f7 Defined visit stats page 2018-07-29 19:25:22 +02:00
Alejandro Celaya
c02b0e0591 Created ShortUrlVisits page 2018-07-29 18:39:00 +02:00
Alejandro Celaya
92f7fffcf3 Implemented behavior to create new short URLs 2018-07-29 18:13:23 +02:00
Alejandro Celaya
f7249cfe6e Implemented short URLs creation 2018-07-28 18:59:32 +02:00
Alejandro Celaya
0a5c20e3ee Connected creation form with redux, and created reducer for short URL creation 2018-07-28 10:41:05 +02:00
Alejandro Celaya
c51bf5b9a0 Renamed ServersService module 2018-07-28 09:56:08 +02:00
Alejandro Celaya
41a4f31c57 Fixed indentation 2018-07-28 09:34:31 +02:00
Alejandro Celaya
e10028a2b9 Renamed classes to match components file names 2018-07-28 09:20:51 +02:00
Alejandro Celaya
ce22b7e8e9 Extracted ShortUrlsRow to its own module 2018-07-28 09:18:55 +02:00
Alejandro Celaya
b734b4515b Extracted ShortUrlsRowMenu to its own module 2018-07-28 09:15:41 +02:00
Alejandro Celaya
842b1a7590 Added preview modal component 2018-07-27 18:21:10 +02:00
Alejandro Celaya
131099b2a6 Added QrCode modal window to short URLs 2018-07-27 18:07:08 +02:00
Alejandro Celaya
78ba7c75ff Moved logic to mark selected server to parent component in order to affect all children compo0nents on the same route 2018-07-24 19:17:01 +02:00
Alejandro Celaya
86a1cdf4d1 Added ordering capabilities to short URLs list 2018-07-22 09:37:57 +02:00
Alejandro Celaya
6e6e54fa36 Installed font awesome regular icons 2018-07-22 08:36:46 +02:00
Alejandro Celaya
b6c82da250 Improved date pickers in create URL form 2018-07-21 19:27:00 +02:00
Alejandro Celaya
0ac6d81fed Added datepickers in create short URL form 2018-07-21 19:07:16 +02:00
Alejandro Celaya
4522443789 Fixed problem while copying short URL 2018-07-21 18:48:33 +02:00
Alejandro Celaya
7add153d93 Installed copy to clipboard package and used for context menu 2018-07-21 12:15:53 +02:00
Alejandro Celaya
d382ee8d95 Added create short URL form 2018-07-21 10:38:54 +02:00
Alejandro Celaya
b2fa86a917 Created short URLs component 2018-07-20 22:32:50 +02:00
Alejandro Celaya
e1049a74a2 Added behavior to mark active server in servers dropdown 2018-07-18 20:26:45 +02:00
Alejandro Celaya
3ea33d0e38 Implemented left menu 2018-07-18 20:01:56 +02:00
Alejandro Celaya
5a7ac69aff Fixed problem while 'reloading' a page with different route params not making the server to be hit 2018-07-18 19:01:43 +02:00
Alejandro Celaya
22406d1253 Added hability to create servers 2018-07-16 18:48:50 +02:00
Alejandro Celaya
010e3ce0f3 Added proper loading status handling to short URLs list 2018-07-15 10:39:05 +02:00
Alejandro Celaya
a4f9a2b8b3 Updated reducers to follow Redux Reducer Bundles proposal 2018-07-15 10:28:39 +02:00
Alejandro Celaya
ac62410926 Added pagination component 2018-06-17 18:13:55 +02:00
Alejandro Celaya
66a81d7e58 Updated ApiClient to return pagination data when listing short URLs 2018-06-17 17:21:47 +02:00
Alejandro Celaya
1f157a015b Moved management of filtering options to own reducer 2018-06-17 17:12:16 +02:00
Alejandro Celaya
6587a08ed1 Created more components for the short URLs list 2018-06-17 10:59:04 +02:00
Alejandro Celaya
b008c37a5b Implemented first elements of short codes list 2018-06-16 11:24:42 +02:00
Alejandro Celaya
f4c48bc94f Fixed loading state in servers list 2018-06-15 21:51:50 +02:00
Alejandro Celaya
c0203f1336 Implemented loading of short URLs 2018-06-15 21:49:25 +02:00