0f9515b90b
refactored out passing service mode
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 14:12:07 -06:00
0f4cd465b1
fixed a few bugs for refreshControl and footerView
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 14:02:32 -06:00
52d02ea3a1
now using diffable datasource
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
# Conflicts:
# EmployeeDirectory/ViewControllers/EmployeesViewController.swift
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 13:59:17 -06:00
28bbade08f
fixed bug
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 12:43:07 -06:00
6f7a43d15e
commented code
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 09:15:12 -06:00
069cc8c06a
commented the code and refactored to new shared.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 09:14:15 -06:00
c127a6c465
commented the code and removed self.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 09:13:41 -06:00
f5c1a64e40
add shared property
...
commented the code
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 09:13:21 -06:00
f07089a1fc
commented the code.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 09:12:56 -06:00
0ad993ca6b
refactored to use 1 method and commented the code.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-21 09:11:06 -06:00
9849636a1b
added telephone number formatter
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 19:42:42 -06:00
ee4d976b2b
added other labels to the employee cell
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 19:33:49 -06:00
a1214cf38b
forgot a hashvalue always changes so I can't use that, therefore I created extension on URL for a UniqueIdentifier based of crypto that will always be the same.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 19:28:06 -06:00
887cfd99ea
wired up the ViewModel's SmallPhoto property change event with Combine
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 19:20:08 -06:00
9d3a23e69d
get the small photo using the ImageCacheService
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 19:19:37 -06:00
6e4ff7a569
first cut at an ImageCache
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 19:19:15 -06:00
f3086d35d5
fixed footview ui bug for not having a frame
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:51:38 -06:00
e1521c47a8
refactored to use new EmployeeCellViewModel
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:49:53 -06:00
4f072677a5
Refactored to use new EmployeeCellViewModel
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:49:32 -06:00
fa5d16f143
created EmployeeCellViewModel
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:48:32 -06:00
522861e434
- refactored to use EmployeeTableViewCell
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:46:36 -06:00
09c8a1ef5a
first cut of EmployeeTableViewCell
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:46:23 -06:00
4848fb3160
added pull to refresh and moved out @objc methods to an extension
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:40:52 -06:00
a0adea163f
created a TableFooterView to be used and refactored ViewController
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:37:11 -06:00
aced710388
added a segmented control to select service state
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:26:19 -06:00
5d8285935f
added CaseIterable
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:26:00 -06:00
f664e81e5b
tested empty issue and seems to work well.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:20:05 -06:00
96468b123b
- added a label in the footer to handle state issues like error or empty.
...
- added a activityIndicator to show/hide based on loading or not.
- testing the malformed state issue
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:19:29 -06:00
53fc099d6e
first cut of building out a list of employees using the valid API
...
this is built off of combine to deal with the state changes of the ViewModel.
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:17:10 -06:00
26864403fd
first cut of a view model
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:08:37 -06:00
532914d357
added public initializer
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 18:08:27 -06:00
dc25bd490d
updated to select endpoint
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 17:39:52 -06:00
bfb721bfd9
fixed bug in url
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 17:32:30 -06:00
a517ced1cc
initial protocol and implementation
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 17:23:07 -06:00
9bc63d31cd
created Models for the objects returned from the services
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 17:22:50 -06:00
255356ff19
created singleton to just fetch data for a decodable. this doesn't handle any customization for a URLRequest, just dealing with a public url for now.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 17:05:20 -06:00
7f2e03ed6b
startig with the Network Service layer for getting JSON and dealing with errors.
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 16:49:52 -06:00
a81045e427
refactored default viewcontroller name
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 16:39:06 -06:00
3f4ed055b9
moved README.MD to the root
...
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 16:33:51 -06:00
dd084d13b4
- initial project creation / setup
...
- adding .gitignore
Signed-off-by: Matt Bruce <mbrucedogs@gmail.com>
2025-01-20 16:26:52 -06:00
45ec0fc1b6
Initial Commit
2025-01-20 16:19:43 -06:00