@salesforce/ui-bundle-template-app-react-sample-b2x 1.117.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/LICENSE.txt +82 -0
  2. package/README.md +52 -0
  3. package/dist/.forceignore +15 -0
  4. package/dist/.husky/pre-commit +4 -0
  5. package/dist/.prettierignore +11 -0
  6. package/dist/.prettierrc +17 -0
  7. package/dist/AGENT.md +193 -0
  8. package/dist/CHANGELOG.md +2128 -0
  9. package/dist/README.md +112 -0
  10. package/dist/config/project-scratch-def.json +13 -0
  11. package/dist/eslint.config.js +7 -0
  12. package/dist/force-app/main/default/classes/MaintenanceRequestTriggerHandler.cls +69 -0
  13. package/dist/force-app/main/default/classes/MaintenanceRequestTriggerHandler.cls-meta.xml +5 -0
  14. package/dist/force-app/main/default/classes/MaintenanceRequestTriggerHandler_Test.cls +308 -0
  15. package/dist/force-app/main/default/classes/MaintenanceRequestTriggerHandler_Test.cls-meta.xml +5 -0
  16. package/dist/force-app/main/default/classes/TenantTriggerHandler.cls +77 -0
  17. package/dist/force-app/main/default/classes/TenantTriggerHandler.cls-meta.xml +5 -0
  18. package/dist/force-app/main/default/classes/TenantTriggerHandler_Test.cls +100 -0
  19. package/dist/force-app/main/default/classes/TenantTriggerHandler_Test.cls-meta.xml +5 -0
  20. package/dist/force-app/main/default/classes/UIBundleAuthUtils.cls +68 -0
  21. package/dist/force-app/main/default/classes/UIBundleAuthUtils.cls-meta.xml +5 -0
  22. package/dist/force-app/main/default/classes/UIBundleChangePassword.cls +77 -0
  23. package/dist/force-app/main/default/classes/UIBundleChangePassword.cls-meta.xml +5 -0
  24. package/dist/force-app/main/default/classes/UIBundleForgotPassword.cls +71 -0
  25. package/dist/force-app/main/default/classes/UIBundleForgotPassword.cls-meta.xml +5 -0
  26. package/dist/force-app/main/default/classes/UIBundleLogin.cls +105 -0
  27. package/dist/force-app/main/default/classes/UIBundleLogin.cls-meta.xml +5 -0
  28. package/dist/force-app/main/default/classes/UIBundleRegistration.cls +162 -0
  29. package/dist/force-app/main/default/classes/UIBundleRegistration.cls-meta.xml +5 -0
  30. package/dist/force-app/main/default/cspTrustedSites/GitHub_Avatars.cspTrustedSite-meta.xml +15 -0
  31. package/dist/force-app/main/default/cspTrustedSites/Google_Fonts.cspTrustedSite-meta.xml +15 -0
  32. package/dist/force-app/main/default/cspTrustedSites/Google_Fonts_Static.cspTrustedSite-meta.xml +15 -0
  33. package/dist/force-app/main/default/cspTrustedSites/OpenStreetMap_Nominatim.cspTrustedSite-meta.xml +15 -0
  34. package/dist/force-app/main/default/cspTrustedSites/OpenStreetMap_Tiles.cspTrustedSite-meta.xml +15 -0
  35. package/dist/force-app/main/default/cspTrustedSites/Open_Meteo_API.cspTrustedSite-meta.xml +15 -0
  36. package/dist/force-app/main/default/cspTrustedSites/Pexels_Images.cspTrustedSite-meta.xml +15 -0
  37. package/dist/force-app/main/default/cspTrustedSites/Pexels_Videos.cspTrustedSite-meta.xml +15 -0
  38. package/dist/force-app/main/default/cspTrustedSites/Unsplash_Images.cspTrustedSite-meta.xml +15 -0
  39. package/dist/force-app/main/default/data/Agent__c.json +79 -0
  40. package/dist/force-app/main/default/data/Application__c.json +124 -0
  41. package/dist/force-app/main/default/data/Contact.json +44 -0
  42. package/dist/force-app/main/default/data/KPI_Snapshot__c.json +160 -0
  43. package/dist/force-app/main/default/data/Lease__c.json +9442 -0
  44. package/dist/force-app/main/default/data/Maintenance_Request__c.json +514 -0
  45. package/dist/force-app/main/default/data/Maintenance_Worker__c.json +304 -0
  46. package/dist/force-app/main/default/data/Notification__c.json +214 -0
  47. package/dist/force-app/main/default/data/Payment__c.json +1024 -0
  48. package/dist/force-app/main/default/data/Property_Cost__c.json +484 -0
  49. package/dist/force-app/main/default/data/Property_Feature__c.json +169 -0
  50. package/dist/force-app/main/default/data/Property_Image__c.json +148 -0
  51. package/dist/force-app/main/default/data/Property_Listing__c.json +130 -0
  52. package/dist/force-app/main/default/data/Property_Management_Company__c.json +70 -0
  53. package/dist/force-app/main/default/data/Property_Owner__c.json +184 -0
  54. package/dist/force-app/main/default/data/Property_Sale__c.json +246 -0
  55. package/dist/force-app/main/default/data/Property__c.json +704 -0
  56. package/dist/force-app/main/default/data/Tenant__c.json +184 -0
  57. package/dist/force-app/main/default/data/data-plan.json +110 -0
  58. package/dist/force-app/main/default/data/prepare-import-unique-fields.js +85 -0
  59. package/dist/force-app/main/default/digitalExperienceConfigs/propertyrentalapp1.digitalExperienceConfig-meta.xml +8 -0
  60. package/dist/force-app/main/default/digitalExperiences/site/propertyrentalapp1/propertyrentalapp1.digitalExperience-meta.xml +11 -0
  61. package/dist/force-app/main/default/digitalExperiences/site/propertyrentalapp1/sfdc_cms__site/propertyrentalapp1/_meta.json +5 -0
  62. package/dist/force-app/main/default/digitalExperiences/site/propertyrentalapp1/sfdc_cms__site/propertyrentalapp1/content.json +10 -0
  63. package/dist/force-app/main/default/layouts/Application__c-Application Layout.layout-meta.xml +58 -0
  64. package/dist/force-app/main/default/layouts/KPI_Snapshot__c-KPI Snapshot Layout.layout-meta.xml +87 -0
  65. package/dist/force-app/main/default/layouts/Lease__c-Lease Layout.layout-meta.xml +83 -0
  66. package/dist/force-app/main/default/layouts/Maintenance_Request__c-Maintenance Request Layout.layout-meta.xml +89 -0
  67. package/dist/force-app/main/default/layouts/Maintenance_Worker__c-Maintenance Worker Layout.layout-meta.xml +66 -0
  68. package/dist/force-app/main/default/layouts/Payment__c-Payment Layout.layout-meta.xml +88 -0
  69. package/dist/force-app/main/default/layouts/Property_Cost__c-Property Cost Layout.layout-meta.xml +88 -0
  70. package/dist/force-app/main/default/layouts/Property_Feature__c-Property Feature Layout.layout-meta.xml +80 -0
  71. package/dist/force-app/main/default/layouts/Property_Image__c-Property Image Layout.layout-meta.xml +75 -0
  72. package/dist/force-app/main/default/layouts/Property_Listing__c-Property Listing Layout.layout-meta.xml +92 -0
  73. package/dist/force-app/main/default/layouts/Property_Management_Company__c-Property Management Company Layout.layout-meta.xml +75 -0
  74. package/dist/force-app/main/default/layouts/Property_Owner__c-Property Owner Layout.layout-meta.xml +67 -0
  75. package/dist/force-app/main/default/layouts/Property_Sale__c-Property Sale Layout.layout-meta.xml +87 -0
  76. package/dist/force-app/main/default/layouts/Property__c-Property Layout.layout-meta.xml +130 -0
  77. package/dist/force-app/main/default/layouts/Tenant__c-Tenant Layout.layout-meta.xml +58 -0
  78. package/dist/force-app/main/default/networks/propertyrentalapp.network-meta.xml +60 -0
  79. package/dist/force-app/main/default/objects/Agent__c/Agent__c.object-meta.xml +66 -0
  80. package/dist/force-app/main/default/objects/Agent__c/fields/Agent_Type__c.field-meta.xml +37 -0
  81. package/dist/force-app/main/default/objects/Agent__c/fields/Availability__c.field-meta.xml +37 -0
  82. package/dist/force-app/main/default/objects/Agent__c/fields/Emergency_Alt__c.field-meta.xml +11 -0
  83. package/dist/force-app/main/default/objects/Agent__c/fields/Language__c.field-meta.xml +42 -0
  84. package/dist/force-app/main/default/objects/Agent__c/fields/License_Expiry__c.field-meta.xml +11 -0
  85. package/dist/force-app/main/default/objects/Agent__c/fields/License_Number__c.field-meta.xml +14 -0
  86. package/dist/force-app/main/default/objects/Agent__c/fields/Office_Location__c.field-meta.xml +42 -0
  87. package/dist/force-app/main/default/objects/Agent__c/fields/Territory__c.field-meta.xml +42 -0
  88. package/dist/force-app/main/default/objects/Application__c/Application__c.object-meta.xml +67 -0
  89. package/dist/force-app/main/default/objects/Application__c/fields/Employment__c.field-meta.xml +10 -0
  90. package/dist/force-app/main/default/objects/Application__c/fields/Property__c.field-meta.xml +15 -0
  91. package/dist/force-app/main/default/objects/Application__c/fields/References__c.field-meta.xml +10 -0
  92. package/dist/force-app/main/default/objects/Application__c/fields/Start_Date__c.field-meta.xml +9 -0
  93. package/dist/force-app/main/default/objects/Application__c/fields/Status__c.field-meta.xml +47 -0
  94. package/dist/force-app/main/default/objects/Application__c/fields/User__c.field-meta.xml +15 -0
  95. package/dist/force-app/main/default/objects/KPI_Snapshot__c/KPI_Snapshot__c.object-meta.xml +65 -0
  96. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Previous_Month_Sales__c.field-meta.xml +12 -0
  97. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Sales_MoM_Change__c.field-meta.xml +18 -0
  98. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Snapshot_Date__c.field-meta.xml +10 -0
  99. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Total_Properties__c.field-meta.xml +13 -0
  100. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Total_Sales_Amount__c.field-meta.xml +12 -0
  101. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Total_Sales_Count__c.field-meta.xml +13 -0
  102. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Units_Available__c.field-meta.xml +13 -0
  103. package/dist/force-app/main/default/objects/KPI_Snapshot__c/fields/Units_Occupied__c.field-meta.xml +13 -0
  104. package/dist/force-app/main/default/objects/Lease__c/Lease__c.object-meta.xml +67 -0
  105. package/dist/force-app/main/default/objects/Lease__c/fields/End_Date__c.field-meta.xml +10 -0
  106. package/dist/force-app/main/default/objects/Lease__c/fields/Lease_Status__c.field-meta.xml +36 -0
  107. package/dist/force-app/main/default/objects/Lease__c/fields/Monthly_Rent__c.field-meta.xml +12 -0
  108. package/dist/force-app/main/default/objects/Lease__c/fields/Property__c.field-meta.xml +15 -0
  109. package/dist/force-app/main/default/objects/Lease__c/fields/Security_Deposit__c.field-meta.xml +12 -0
  110. package/dist/force-app/main/default/objects/Lease__c/fields/Start_Date__c.field-meta.xml +10 -0
  111. package/dist/force-app/main/default/objects/Lease__c/fields/Tenant__c.field-meta.xml +14 -0
  112. package/dist/force-app/main/default/objects/Lease__c/validationRules/End_Date_After_Start_Date.validationRule-meta.xml +10 -0
  113. package/dist/force-app/main/default/objects/Maintenance_Request__c/Maintenance_Request__c.object-meta.xml +73 -0
  114. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Actual_Cost__c.field-meta.xml +13 -0
  115. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Assigned_Worker__c.field-meta.xml +15 -0
  116. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Completed__c.field-meta.xml +11 -0
  117. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Description__c.field-meta.xml +12 -0
  118. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Est_Cost__c.field-meta.xml +13 -0
  119. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Priority__c.field-meta.xml +32 -0
  120. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Property__c.field-meta.xml +15 -0
  121. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Scheduled__c.field-meta.xml +11 -0
  122. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Status__c.field-meta.xml +42 -0
  123. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Tenant_Home__c.field-meta.xml +11 -0
  124. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/Type__c.field-meta.xml +62 -0
  125. package/dist/force-app/main/default/objects/Maintenance_Request__c/fields/User__c.field-meta.xml +15 -0
  126. package/dist/force-app/main/default/objects/Maintenance_Worker__c/Maintenance_Worker__c.object-meta.xml +71 -0
  127. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Certifications__c.field-meta.xml +12 -0
  128. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Employment_Type__c.field-meta.xml +32 -0
  129. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Hourly_Rate__c.field-meta.xml +13 -0
  130. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/IsActive__c.field-meta.xml +11 -0
  131. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Location__c.field-meta.xml +13 -0
  132. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Phone__c.field-meta.xml +11 -0
  133. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Rating__c.field-meta.xml +14 -0
  134. package/dist/force-app/main/default/objects/Maintenance_Worker__c/fields/Type__c.field-meta.xml +57 -0
  135. package/dist/force-app/main/default/objects/Notification__c/Notification__c.object-meta.xml +67 -0
  136. package/dist/force-app/main/default/objects/Notification__c/fields/Is_Read__c.field-meta.xml +10 -0
  137. package/dist/force-app/main/default/objects/Notification__c/fields/Message__c.field-meta.xml +11 -0
  138. package/dist/force-app/main/default/objects/Notification__c/fields/Priority__c.field-meta.xml +36 -0
  139. package/dist/force-app/main/default/objects/Notification__c/fields/Related_Object_Type__c.field-meta.xml +12 -0
  140. package/dist/force-app/main/default/objects/Notification__c/fields/Related_Record_Id__c.field-meta.xml +12 -0
  141. package/dist/force-app/main/default/objects/Notification__c/fields/Title__c.field-meta.xml +12 -0
  142. package/dist/force-app/main/default/objects/Notification__c/fields/Type__c.field-meta.xml +36 -0
  143. package/dist/force-app/main/default/objects/Notification__c/fields/User__c.field-meta.xml +14 -0
  144. package/dist/force-app/main/default/objects/Payment__c/Payment__c.object-meta.xml +67 -0
  145. package/dist/force-app/main/default/objects/Payment__c/fields/Amount__c.field-meta.xml +12 -0
  146. package/dist/force-app/main/default/objects/Payment__c/fields/Lease__c.field-meta.xml +15 -0
  147. package/dist/force-app/main/default/objects/Payment__c/fields/Notes__c.field-meta.xml +11 -0
  148. package/dist/force-app/main/default/objects/Payment__c/fields/Payment_Date__c.field-meta.xml +10 -0
  149. package/dist/force-app/main/default/objects/Payment__c/fields/Payment_Method__c.field-meta.xml +41 -0
  150. package/dist/force-app/main/default/objects/Payment__c/fields/Payment_Status__c.field-meta.xml +36 -0
  151. package/dist/force-app/main/default/objects/Property_Cost__c/Property_Cost__c.object-meta.xml +67 -0
  152. package/dist/force-app/main/default/objects/Property_Cost__c/fields/Cost_Amount__c.field-meta.xml +12 -0
  153. package/dist/force-app/main/default/objects/Property_Cost__c/fields/Cost_Category__c.field-meta.xml +56 -0
  154. package/dist/force-app/main/default/objects/Property_Cost__c/fields/Cost_Date__c.field-meta.xml +11 -0
  155. package/dist/force-app/main/default/objects/Property_Cost__c/fields/Description__c.field-meta.xml +12 -0
  156. package/dist/force-app/main/default/objects/Property_Cost__c/fields/Property__c.field-meta.xml +15 -0
  157. package/dist/force-app/main/default/objects/Property_Cost__c/fields/Vendor__c.field-meta.xml +12 -0
  158. package/dist/force-app/main/default/objects/Property_Cost__c/validationRules/Cost_Amount_Limit.validationRule-meta.xml +10 -0
  159. package/dist/force-app/main/default/objects/Property_Feature__c/Property_Feature__c.object-meta.xml +65 -0
  160. package/dist/force-app/main/default/objects/Property_Feature__c/fields/Description__c.field-meta.xml +11 -0
  161. package/dist/force-app/main/default/objects/Property_Feature__c/fields/Display_on_Listing__c.field-meta.xml +10 -0
  162. package/dist/force-app/main/default/objects/Property_Feature__c/fields/Feature_Category__c.field-meta.xml +51 -0
  163. package/dist/force-app/main/default/objects/Property_Feature__c/fields/Property__c.field-meta.xml +15 -0
  164. package/dist/force-app/main/default/objects/Property_Image__c/Property_Image__c.object-meta.xml +65 -0
  165. package/dist/force-app/main/default/objects/Property_Image__c/fields/Alt_Text__c.field-meta.xml +12 -0
  166. package/dist/force-app/main/default/objects/Property_Image__c/fields/Display_Order__c.field-meta.xml +13 -0
  167. package/dist/force-app/main/default/objects/Property_Image__c/fields/Image_Type__c.field-meta.xml +41 -0
  168. package/dist/force-app/main/default/objects/Property_Image__c/fields/Image_URL__c.field-meta.xml +10 -0
  169. package/dist/force-app/main/default/objects/Property_Image__c/fields/Property__c.field-meta.xml +15 -0
  170. package/dist/force-app/main/default/objects/Property_Listing__c/Property_Listing__c.object-meta.xml +65 -0
  171. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Display_Order__c.field-meta.xml +13 -0
  172. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Featured__c.field-meta.xml +10 -0
  173. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Listing_Price__c.field-meta.xml +12 -0
  174. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Listing_Status__c.field-meta.xml +41 -0
  175. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Marketing_Description__c.field-meta.xml +11 -0
  176. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Property__c.field-meta.xml +15 -0
  177. package/dist/force-app/main/default/objects/Property_Listing__c/fields/Short_Description__c.field-meta.xml +12 -0
  178. package/dist/force-app/main/default/objects/Property_Management_Company__c/Property_Management_Company__c.object-meta.xml +65 -0
  179. package/dist/force-app/main/default/objects/Property_Management_Company__c/fields/Active__c.field-meta.xml +10 -0
  180. package/dist/force-app/main/default/objects/Property_Management_Company__c/fields/Company_Code__c.field-meta.xml +13 -0
  181. package/dist/force-app/main/default/objects/Property_Management_Company__c/fields/Email__c.field-meta.xml +10 -0
  182. package/dist/force-app/main/default/objects/Property_Management_Company__c/fields/Phone__c.field-meta.xml +10 -0
  183. package/dist/force-app/main/default/objects/Property_Management_Company__c/fields/Primary_Contact__c.field-meta.xml +14 -0
  184. package/dist/force-app/main/default/objects/Property_Owner__c/Property_Owner__c.object-meta.xml +65 -0
  185. package/dist/force-app/main/default/objects/Property_Owner__c/fields/Address__c.field-meta.xml +10 -0
  186. package/dist/force-app/main/default/objects/Property_Owner__c/fields/Email__c.field-meta.xml +11 -0
  187. package/dist/force-app/main/default/objects/Property_Owner__c/fields/Phone__c.field-meta.xml +10 -0
  188. package/dist/force-app/main/default/objects/Property_Sale__c/Property_Sale__c.object-meta.xml +67 -0
  189. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Buyer_Tenant__c.field-meta.xml +13 -0
  190. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Payment_Method__c.field-meta.xml +41 -0
  191. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Property__c.field-meta.xml +15 -0
  192. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Reference_Number__c.field-meta.xml +12 -0
  193. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Sale_Amount__c.field-meta.xml +12 -0
  194. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Sale_Date__c.field-meta.xml +10 -0
  195. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Sale_Status__c.field-meta.xml +36 -0
  196. package/dist/force-app/main/default/objects/Property_Sale__c/fields/Sale_Type__c.field-meta.xml +51 -0
  197. package/dist/force-app/main/default/objects/Property__c/Property__c.object-meta.xml +71 -0
  198. package/dist/force-app/main/default/objects/Property__c/fields/Address__c.field-meta.xml +13 -0
  199. package/dist/force-app/main/default/objects/Property__c/fields/Agent__c.field-meta.xml +15 -0
  200. package/dist/force-app/main/default/objects/Property__c/fields/Available_Date__c.field-meta.xml +11 -0
  201. package/dist/force-app/main/default/objects/Property__c/fields/Bathrooms__c.field-meta.xml +14 -0
  202. package/dist/force-app/main/default/objects/Property__c/fields/Bedrooms__c.field-meta.xml +14 -0
  203. package/dist/force-app/main/default/objects/Property__c/fields/Coordinates__c.field-meta.xml +12 -0
  204. package/dist/force-app/main/default/objects/Property__c/fields/Deposit__c.field-meta.xml +13 -0
  205. package/dist/force-app/main/default/objects/Property__c/fields/Description__c.field-meta.xml +12 -0
  206. package/dist/force-app/main/default/objects/Property__c/fields/Features__c.field-meta.xml +38 -0
  207. package/dist/force-app/main/default/objects/Property__c/fields/Hero_Image__c.field-meta.xml +11 -0
  208. package/dist/force-app/main/default/objects/Property__c/fields/Lease_Term__c.field-meta.xml +14 -0
  209. package/dist/force-app/main/default/objects/Property__c/fields/Monthly_Rent__c.field-meta.xml +13 -0
  210. package/dist/force-app/main/default/objects/Property__c/fields/Parking__c.field-meta.xml +14 -0
  211. package/dist/force-app/main/default/objects/Property__c/fields/Pet_Friendly__c.field-meta.xml +11 -0
  212. package/dist/force-app/main/default/objects/Property__c/fields/Sq_Ft__c.field-meta.xml +14 -0
  213. package/dist/force-app/main/default/objects/Property__c/fields/Status__c.field-meta.xml +37 -0
  214. package/dist/force-app/main/default/objects/Property__c/fields/Tour_URL__c.field-meta.xml +11 -0
  215. package/dist/force-app/main/default/objects/Property__c/fields/Type__c.field-meta.xml +37 -0
  216. package/dist/force-app/main/default/objects/Property__c/fields/Utilities__c.field-meta.xml +38 -0
  217. package/dist/force-app/main/default/objects/Property__c/fields/Year_Built__c.field-meta.xml +14 -0
  218. package/dist/force-app/main/default/objects/Tenant__c/Tenant__c.object-meta.xml +67 -0
  219. package/dist/force-app/main/default/objects/Tenant__c/fields/End_Date__c.field-meta.xml +11 -0
  220. package/dist/force-app/main/default/objects/Tenant__c/fields/Property__c.field-meta.xml +15 -0
  221. package/dist/force-app/main/default/objects/Tenant__c/fields/Start_Date__c.field-meta.xml +11 -0
  222. package/dist/force-app/main/default/objects/Tenant__c/fields/Status__c.field-meta.xml +37 -0
  223. package/dist/force-app/main/default/objects/Tenant__c/fields/User_Status__c.field-meta.xml +42 -0
  224. package/dist/force-app/main/default/objects/Tenant__c/fields/User__c.field-meta.xml +15 -0
  225. package/dist/force-app/main/default/package.xml +20 -0
  226. package/dist/force-app/main/default/permissionsets/Property_Management_Access.permissionset-meta.xml +633 -0
  227. package/dist/force-app/main/default/permissionsets/Tenant_Maintenance_Access.permissionset-meta.xml +137 -0
  228. package/dist/force-app/main/default/sites/propertyrentalapp.site-meta.xml +31 -0
  229. package/dist/force-app/main/default/triggers/MaintenanceRequestTrigger.trigger +5 -0
  230. package/dist/force-app/main/default/triggers/MaintenanceRequestTrigger.trigger-meta.xml +5 -0
  231. package/dist/force-app/main/default/triggers/TenantTrigger.trigger +8 -0
  232. package/dist/force-app/main/default/triggers/TenantTrigger.trigger-meta.xml +5 -0
  233. package/dist/force-app/main/default/uiBundles/propertyrentalapp/.forceignore +15 -0
  234. package/dist/force-app/main/default/uiBundles/propertyrentalapp/.graphqlrc.yml +2 -0
  235. package/dist/force-app/main/default/uiBundles/propertyrentalapp/.prettierignore +9 -0
  236. package/dist/force-app/main/default/uiBundles/propertyrentalapp/.prettierrc +11 -0
  237. package/dist/force-app/main/default/uiBundles/propertyrentalapp/CHANGELOG.md +10 -0
  238. package/dist/force-app/main/default/uiBundles/propertyrentalapp/README.md +35 -0
  239. package/dist/force-app/main/default/uiBundles/propertyrentalapp/codegen.yml +95 -0
  240. package/dist/force-app/main/default/uiBundles/propertyrentalapp/components.json +18 -0
  241. package/dist/force-app/main/default/uiBundles/propertyrentalapp/e2e/app.spec.ts +17 -0
  242. package/dist/force-app/main/default/uiBundles/propertyrentalapp/eslint.config.js +169 -0
  243. package/dist/force-app/main/default/uiBundles/propertyrentalapp/index.html +18 -0
  244. package/dist/force-app/main/default/uiBundles/propertyrentalapp/package.json +74 -0
  245. package/dist/force-app/main/default/uiBundles/propertyrentalapp/playwright.config.ts +24 -0
  246. package/dist/force-app/main/default/uiBundles/propertyrentalapp/propertyrentalapp.uibundle-meta.xml +8 -0
  247. package/dist/force-app/main/default/uiBundles/propertyrentalapp/scripts/get-graphql-schema.mjs +68 -0
  248. package/dist/force-app/main/default/uiBundles/propertyrentalapp/scripts/rewrite-e2e-assets.mjs +23 -0
  249. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/applications/applicationApi.ts +54 -0
  250. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/graphql-operations-types.ts +16005 -0
  251. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/graphqlClient.ts +25 -0
  252. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/leads/leadApi.ts +78 -0
  253. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/maintenanceRequests/maintenanceRequestApi.ts +74 -0
  254. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/maintenanceRequests/query/maintenanceRequests.graphql +60 -0
  255. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/propertyDetailGraphQL.ts +75 -0
  256. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/propertyNodeUtils.ts +29 -0
  257. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/propertySearchService.ts +56 -0
  258. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/query/distinctPropertyStatus.graphql +19 -0
  259. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/query/distinctPropertyType.graphql +19 -0
  260. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/query/listingById.graphql +29 -0
  261. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/query/propertyAddressesByIds.graphql +17 -0
  262. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/query/propertyDetailById.graphql +124 -0
  263. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/properties/query/searchProperties.graphql +85 -0
  264. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/query/tenantAccess.graphql +13 -0
  265. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/api/tenantApi.ts +12 -0
  266. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/app.tsx +43 -0
  267. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/appLayout.tsx +24 -0
  268. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/appliances.svg +13 -0
  269. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/book.svg +3 -0
  270. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/copy.svg +4 -0
  271. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/electrical.svg +39 -0
  272. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/hvac.svg +78 -0
  273. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/pest.svg +5 -0
  274. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/plumbing.svg +7 -0
  275. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/rocket.svg +3 -0
  276. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/star.svg +3 -0
  277. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/icons/zen-logo.svg +5 -0
  278. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/images/codey-1.png +0 -0
  279. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/images/codey-2.png +0 -0
  280. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/images/codey-3.png +0 -0
  281. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/assets/images/vibe-codey.svg +194 -0
  282. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/SkeletonPrimitives.tsx +36 -0
  283. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/alerts/status-alert.tsx +49 -0
  284. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/dashboard/WeatherWidget.tsx +235 -0
  285. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/layout/TopBar.tsx +133 -0
  286. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/layout/VerticalNav.tsx +97 -0
  287. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/layouts/card-layout.tsx +29 -0
  288. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/maintenanceRequests/MaintenanceRequestIcon.tsx +46 -0
  289. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/maintenanceRequests/MaintenanceRequestList.tsx +52 -0
  290. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/maintenanceRequests/MaintenanceRequestListItem.tsx +74 -0
  291. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/maintenanceRequests/MaintenanceSummaryDetailsModal.tsx +92 -0
  292. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/maintenanceRequests/StatusBadge.tsx +36 -0
  293. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/properties/PropertyListingCard.tsx +178 -0
  294. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/properties/PropertyMap.tsx +186 -0
  295. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/properties/PropertySearchFilters.tsx +315 -0
  296. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/alert.tsx +76 -0
  297. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/badge.tsx +48 -0
  298. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/breadcrumb.tsx +109 -0
  299. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/button.tsx +67 -0
  300. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/calendar.tsx +232 -0
  301. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/card.tsx +103 -0
  302. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/checkbox.tsx +32 -0
  303. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/collapsible.tsx +33 -0
  304. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/datePicker.tsx +127 -0
  305. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/dialog.tsx +162 -0
  306. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/field.tsx +237 -0
  307. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/index.ts +84 -0
  308. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/input.tsx +19 -0
  309. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/label.tsx +22 -0
  310. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/pagination.tsx +132 -0
  311. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/popover.tsx +89 -0
  312. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/select.tsx +193 -0
  313. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/separator.tsx +26 -0
  314. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/skeleton.tsx +14 -0
  315. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/sonner.tsx +20 -0
  316. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/spinner.tsx +16 -0
  317. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/table.tsx +114 -0
  318. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/components/ui/tabs.tsx +88 -0
  319. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/api/userProfileApi.ts +95 -0
  320. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/authHelpers.ts +73 -0
  321. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/authenticationConfig.ts +61 -0
  322. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/context/AuthContext.tsx +95 -0
  323. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/footers/footer-link.tsx +36 -0
  324. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/forms/auth-form.tsx +81 -0
  325. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/forms/submit-button.tsx +49 -0
  326. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/hooks/form.tsx +120 -0
  327. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/hooks/useCountdownTimer.ts +266 -0
  328. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/hooks/useRetryWithBackoff.ts +109 -0
  329. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/layout/card-skeleton.tsx +38 -0
  330. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/layout/centered-page-layout.tsx +87 -0
  331. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/layouts/AuthAppLayout.tsx +12 -0
  332. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/layouts/TenantRoute.tsx +22 -0
  333. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/layouts/authenticationRouteLayout.tsx +21 -0
  334. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/layouts/privateRouteLayout.tsx +44 -0
  335. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/pages/ChangePassword.tsx +107 -0
  336. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/pages/ForgotPassword.tsx +73 -0
  337. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/pages/Login.tsx +97 -0
  338. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/pages/Profile.tsx +161 -0
  339. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/pages/Register.tsx +133 -0
  340. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/pages/ResetPassword.tsx +107 -0
  341. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/sessionTimeout/SessionTimeoutValidator.tsx +602 -0
  342. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/sessionTimeout/sessionTimeService.ts +149 -0
  343. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/sessionTimeout/sessionTimeoutConfig.ts +77 -0
  344. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/authentication/utils/helpers.ts +121 -0
  345. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/api/accountSearchService.ts +46 -0
  346. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/api/query/distinctAccountIndustries.graphql +19 -0
  347. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/api/query/distinctAccountTypes.graphql +19 -0
  348. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/api/query/getAccountDetail.graphql +121 -0
  349. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/api/query/searchAccounts.graphql +51 -0
  350. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/pages/AccountObjectDetailPage.tsx +357 -0
  351. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/pages/AccountSearch.tsx +312 -0
  352. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/__examples__/pages/Home.tsx +34 -0
  353. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/api/objectSearchService.ts +84 -0
  354. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/ActiveFilters.tsx +89 -0
  355. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/FilterContext.tsx +83 -0
  356. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/ObjectBreadcrumb.tsx +66 -0
  357. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/PaginationControls.tsx +109 -0
  358. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/SearchBar.tsx +41 -0
  359. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/SortControl.tsx +143 -0
  360. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/BooleanFilter.tsx +78 -0
  361. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/DateFilter.tsx +128 -0
  362. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/DateRangeFilter.tsx +70 -0
  363. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/FilterFieldWrapper.tsx +33 -0
  364. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/MultiSelectFilter.tsx +97 -0
  365. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/NumericRangeFilter.tsx +163 -0
  366. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/SearchFilter.tsx +50 -0
  367. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/SelectFilter.tsx +97 -0
  368. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/components/filters/TextFilter.tsx +91 -0
  369. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/hooks/useAsyncData.ts +54 -0
  370. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/hooks/useCachedAsyncData.ts +184 -0
  371. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/hooks/useDebouncedCallback.ts +34 -0
  372. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/hooks/useObjectSearchParams.ts +252 -0
  373. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/utils/debounce.ts +25 -0
  374. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/utils/fieldUtils.ts +29 -0
  375. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/utils/filterUtils.ts +395 -0
  376. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/features/object-search/utils/sortUtils.ts +38 -0
  377. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/hooks/useGeocode.ts +33 -0
  378. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/hooks/useMaintenanceRequests.ts +43 -0
  379. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/hooks/usePropertyDetail.ts +63 -0
  380. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/hooks/usePropertyMapMarkers.ts +181 -0
  381. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/hooks/useTenantAccess.ts +38 -0
  382. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/hooks/useWeather.ts +311 -0
  383. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/lib/utils.ts +6 -0
  384. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/navigationMenu.tsx +80 -0
  385. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/Application.tsx +235 -0
  386. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/Contact.tsx +247 -0
  387. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/Dashboard.tsx +45 -0
  388. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/Home.tsx +507 -0
  389. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/Maintenance.tsx +330 -0
  390. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/NotFound.tsx +14 -0
  391. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/PropertyDetails.tsx +356 -0
  392. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/PropertySearch.tsx +472 -0
  393. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/pages/PropertySearchPlaceholder.tsx +49 -0
  394. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-01.jpg +0 -0
  395. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-02.jpg +0 -0
  396. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-03.jpg +0 -0
  397. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-04.jpg +0 -0
  398. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-05.jpg +0 -0
  399. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-06.jpg +0 -0
  400. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-07.jpg +0 -0
  401. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-08.jpg +0 -0
  402. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-09.jpg +0 -0
  403. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-10.jpg +0 -0
  404. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-11.jpg +0 -0
  405. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-12.jpg +0 -0
  406. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-13.jpg +0 -0
  407. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-14.jpg +0 -0
  408. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-15.jpg +0 -0
  409. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-16.jpg +0 -0
  410. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-17.jpg +0 -0
  411. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-18.jpg +0 -0
  412. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-19.jpg +0 -0
  413. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-20.jpg +0 -0
  414. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-21.jpg +0 -0
  415. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-22.jpg +0 -0
  416. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-23.jpg +0 -0
  417. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-24.jpg +0 -0
  418. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/public/property-25.jpg +0 -0
  419. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/router-utils.tsx +35 -0
  420. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/routes.tsx +130 -0
  421. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/styles/global.css +229 -0
  422. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/types/leaflet.d.ts +17 -0
  423. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/types/searchResults.ts +229 -0
  424. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/utils/geocode.ts +90 -0
  425. package/dist/force-app/main/default/uiBundles/propertyrentalapp/src/utils/propertyListingPaginationUtils.ts +18 -0
  426. package/dist/force-app/main/default/uiBundles/propertyrentalapp/tsconfig.json +42 -0
  427. package/dist/force-app/main/default/uiBundles/propertyrentalapp/tsconfig.node.json +13 -0
  428. package/dist/force-app/main/default/uiBundles/propertyrentalapp/ui-bundle.json +7 -0
  429. package/dist/force-app/main/default/uiBundles/propertyrentalapp/vite-env.d.ts +1 -0
  430. package/dist/force-app/main/default/uiBundles/propertyrentalapp/vite.config.ts +106 -0
  431. package/dist/force-app/main/default/uiBundles/propertyrentalapp/vitest-env.d.ts +2 -0
  432. package/dist/force-app/main/default/uiBundles/propertyrentalapp/vitest.config.ts +11 -0
  433. package/dist/force-app/main/default/uiBundles/propertyrentalapp/vitest.setup.ts +1 -0
  434. package/dist/jest.config.js +6 -0
  435. package/dist/package-lock.json +9995 -0
  436. package/dist/package.json +40 -0
  437. package/dist/scripts/apex/hello.apex +10 -0
  438. package/dist/scripts/graphql-search.sh +191 -0
  439. package/dist/scripts/prepare-import-unique-fields.js +122 -0
  440. package/dist/scripts/setup-cli.mjs +563 -0
  441. package/dist/scripts/sf-project-setup.mjs +66 -0
  442. package/dist/scripts/soql/account.soql +6 -0
  443. package/dist/sfdx-project.json +12 -0
  444. package/package.json +43 -0
@@ -0,0 +1,137 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <PermissionSet xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <description>Tenant access: create and manage only their own maintenance requests. No View All / Modify All — tenants see only records they own. Assign to tenant users; do not assign Property Management Access.</description>
4
+ <hasActivationRequired>false</hasActivationRequired>
5
+ <label>Tenant Maintenance Access</label>
6
+
7
+ <!-- Object: Maintenance_Request__c — CRUD only (no viewAllRecords/modifyAllRecords); with OWD Private, tenants see only records they own -->
8
+ <objectPermissions>
9
+ <allowCreate>true</allowCreate>
10
+ <allowDelete>false</allowDelete>
11
+ <allowEdit>true</allowEdit>
12
+ <allowRead>true</allowRead>
13
+ <object>Maintenance_Request__c</object>
14
+ </objectPermissions>
15
+ <!-- Property__c — read-only for address display on maintenance list -->
16
+ <objectPermissions>
17
+ <allowCreate>false</allowCreate>
18
+ <allowDelete>false</allowDelete>
19
+ <allowEdit>false</allowEdit>
20
+ <allowRead>true</allowRead>
21
+ <object>Property__c</object>
22
+ </objectPermissions>
23
+ <!-- Tenant__c — read-only so tenant can resolve their own record -->
24
+ <objectPermissions>
25
+ <allowCreate>false</allowCreate>
26
+ <allowDelete>false</allowDelete>
27
+ <allowEdit>false</allowEdit>
28
+ <allowRead>true</allowRead>
29
+ <object>Tenant__c</object>
30
+ </objectPermissions>
31
+
32
+ <!-- Field Permissions: Maintenance_Request__c -->
33
+ <fieldPermissions>
34
+ <editable>true</editable>
35
+ <field>Maintenance_Request__c.User__c</field>
36
+ <readable>true</readable>
37
+ </fieldPermissions>
38
+ <fieldPermissions>
39
+ <editable>false</editable>
40
+ <field>Maintenance_Request__c.Property__c</field>
41
+ <readable>true</readable>
42
+ </fieldPermissions>
43
+ <fieldPermissions>
44
+ <editable>true</editable>
45
+ <field>Maintenance_Request__c.Type__c</field>
46
+ <readable>true</readable>
47
+ </fieldPermissions>
48
+ <fieldPermissions>
49
+ <editable>true</editable>
50
+ <field>Maintenance_Request__c.Priority__c</field>
51
+ <readable>true</readable>
52
+ </fieldPermissions>
53
+ <fieldPermissions>
54
+ <editable>true</editable>
55
+ <field>Maintenance_Request__c.Status__c</field>
56
+ <readable>true</readable>
57
+ </fieldPermissions>
58
+ <fieldPermissions>
59
+ <editable>true</editable>
60
+ <field>Maintenance_Request__c.Description__c</field>
61
+ <readable>true</readable>
62
+ </fieldPermissions>
63
+ <fieldPermissions>
64
+ <editable>true</editable>
65
+ <field>Maintenance_Request__c.Scheduled__c</field>
66
+ <readable>true</readable>
67
+ </fieldPermissions>
68
+ <fieldPermissions>
69
+ <editable>false</editable>
70
+ <field>Maintenance_Request__c.Completed__c</field>
71
+ <readable>true</readable>
72
+ </fieldPermissions>
73
+ <fieldPermissions>
74
+ <editable>false</editable>
75
+ <field>Maintenance_Request__c.Est_Cost__c</field>
76
+ <readable>true</readable>
77
+ </fieldPermissions>
78
+ <fieldPermissions>
79
+ <editable>false</editable>
80
+ <field>Maintenance_Request__c.Actual_Cost__c</field>
81
+ <readable>true</readable>
82
+ </fieldPermissions>
83
+ <fieldPermissions>
84
+ <editable>false</editable>
85
+ <field>Maintenance_Request__c.Tenant_Home__c</field>
86
+ <readable>true</readable>
87
+ </fieldPermissions>
88
+ <fieldPermissions>
89
+ <editable>false</editable>
90
+ <field>Maintenance_Request__c.Assigned_Worker__c</field>
91
+ <readable>true</readable>
92
+ </fieldPermissions>
93
+
94
+ <!-- Field Permissions: Property__c (for list/detail) -->
95
+ <fieldPermissions>
96
+ <editable>false</editable>
97
+ <field>Property__c.Address__c</field>
98
+ <readable>true</readable>
99
+ </fieldPermissions>
100
+ <fieldPermissions>
101
+ <editable>false</editable>
102
+ <field>Property__c.Coordinates__c</field>
103
+ <readable>true</readable>
104
+ </fieldPermissions>
105
+
106
+ <!-- Field Permissions: Tenant__c -->
107
+ <fieldPermissions>
108
+ <editable>false</editable>
109
+ <field>Tenant__c.User__c</field>
110
+ <readable>true</readable>
111
+ </fieldPermissions>
112
+ <fieldPermissions>
113
+ <editable>false</editable>
114
+ <field>Tenant__c.User_Status__c</field>
115
+ <readable>true</readable>
116
+ </fieldPermissions>
117
+ <fieldPermissions>
118
+ <editable>false</editable>
119
+ <field>Tenant__c.Property__c</field>
120
+ <readable>true</readable>
121
+ </fieldPermissions>
122
+ <fieldPermissions>
123
+ <editable>false</editable>
124
+ <field>Tenant__c.Start_Date__c</field>
125
+ <readable>true</readable>
126
+ </fieldPermissions>
127
+ <fieldPermissions>
128
+ <editable>false</editable>
129
+ <field>Tenant__c.End_Date__c</field>
130
+ <readable>true</readable>
131
+ </fieldPermissions>
132
+ <fieldPermissions>
133
+ <editable>false</editable>
134
+ <field>Tenant__c.Status__c</field>
135
+ <readable>true</readable>
136
+ </fieldPermissions>
137
+ </PermissionSet>
@@ -0,0 +1,31 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <CustomSite xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <active>true</active>
4
+ <allowGuestPaymentsApi>false</allowGuestPaymentsApi>
5
+ <allowHomePage>false</allowHomePage>
6
+ <allowStandardAnswersPages>false</allowStandardAnswersPages>
7
+ <allowStandardIdeasPages>false</allowStandardIdeasPages>
8
+ <allowStandardLookups>false</allowStandardLookups>
9
+ <allowStandardPortalPages>true</allowStandardPortalPages>
10
+ <allowStandardSearch>false</allowStandardSearch>
11
+ <authorizationRequiredPage>CommunitiesLogin</authorizationRequiredPage>
12
+ <bandwidthExceededPage>BandwidthExceeded</bandwidthExceededPage>
13
+ <browserXssProtection>true</browserXssProtection>
14
+ <cachePublicVisualforcePagesInProxyServers>true</cachePublicVisualforcePagesInProxyServers>
15
+ <clickjackProtectionLevel>SameOriginOnly</clickjackProtectionLevel>
16
+ <contentSniffingProtection>true</contentSniffingProtection>
17
+ <enableAuraRequests>true</enableAuraRequests>
18
+ <fileNotFoundPage>FileNotFound</fileNotFoundPage>
19
+ <genericErrorPage>Exception</genericErrorPage>
20
+ <inMaintenancePage>InMaintenance</inMaintenancePage>
21
+ <indexPage>CommunitiesLanding</indexPage>
22
+ <masterLabel>propertyrentalapp</masterLabel>
23
+ <redirectToCustomDomain>false</redirectToCustomDomain>
24
+ <referrerPolicyOriginWhenCrossOrigin>true</referrerPolicyOriginWhenCrossOrigin>
25
+ <selfRegPage>CommunitiesSelfReg</selfRegPage>
26
+ <!-- <serverIsDown>SNA_U2rxy_sf_default_cdn_byo1</serverIsDown> -->
27
+ <!-- <siteAdmin>epic.out.d1d3a2d722c8@orgfarm.salesforce.com</siteAdmin> -->
28
+ <!-- <siteGuestRecordDefaultOwner>epic.out.d1d3a2d722c8@orgfarm.salesforce.com</siteGuestRecordDefaultOwner> -->
29
+ <siteType>ChatterNetwork</siteType>
30
+ <urlPathPrefix>propertyrentalappvforcesite</urlPathPrefix>
31
+ </CustomSite>
@@ -0,0 +1,5 @@
1
+ trigger MaintenanceRequestTrigger on Maintenance_Request__c (before insert) {
2
+ if (Trigger.isBefore && Trigger.isInsert) {
3
+ MaintenanceRequestTriggerHandler.handleBeforeInsert(Trigger.new);
4
+ }
5
+ }
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ApexTrigger xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <status>Active</status>
5
+ </ApexTrigger>
@@ -0,0 +1,8 @@
1
+ trigger TenantTrigger on Tenant__c (after insert, after update) {
2
+ if (Trigger.isAfter && Trigger.isInsert) {
3
+ TenantTriggerHandler.assignTenantMaintenanceAccess(Trigger.new, null);
4
+ }
5
+ if (Trigger.isAfter && Trigger.isUpdate) {
6
+ TenantTriggerHandler.assignTenantMaintenanceAccess(Trigger.new, Trigger.oldMap);
7
+ }
8
+ }
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ApexTrigger xmlns="http://soap.sforce.com/2006/04/metadata">
3
+ <apiVersion>66.0</apiVersion>
4
+ <status>Active</status>
5
+ </ApexTrigger>
@@ -0,0 +1,15 @@
1
+ # List files or directories below to ignore them when running force:source:push, force:source:pull, and force:source:status
2
+ # More information: https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_exclude_source.htm
3
+ #
4
+
5
+ package.xml
6
+
7
+ # LWC configuration files
8
+ **/jsconfig.json
9
+ **/.eslintrc.json
10
+
11
+ # LWC Jest
12
+ **/__tests__/**
13
+
14
+ node_modules/
15
+ .DS_Store
@@ -0,0 +1,2 @@
1
+ schema: '../../../../../schema.graphql'
2
+ documents: 'src/**/*.{graphql,js,ts,jsx,tsx}'
@@ -0,0 +1,9 @@
1
+ node_modules
2
+ dist
3
+ build
4
+ .vite
5
+ coverage
6
+ *.min.js
7
+ *.min.css
8
+ *.map
9
+ package-lock.json
@@ -0,0 +1,11 @@
1
+ {
2
+ "semi": true,
3
+ "trailingComma": "es5",
4
+ "singleQuote": true,
5
+ "printWidth": 80,
6
+ "tabWidth": 2,
7
+ "useTabs": false,
8
+ "bracketSpacing": true,
9
+ "arrowParens": "avoid",
10
+ "endOfLine": "lf"
11
+ }
@@ -0,0 +1,10 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
+
6
+ # [1.59.0](https://github.com/salesforce-experience-platform-emu/webapps/compare/v1.58.2...v1.59.0) (2026-02-27)
7
+
8
+ ### Features
9
+
10
+ - auto bump base react app versions and fix issue with base ui-bundle json ([#175](https://github.com/salesforce-experience-platform-emu/webapps/issues/175)) ([048b5a8](https://github.com/salesforce-experience-platform-emu/webapps/commit/048b5a8449c899fc923aeebc3c76bc5bf1c5e0d4))
@@ -0,0 +1,35 @@
1
+ # Property Rental App
2
+
3
+ A property rental sample React UI Bundle with an app shell for Salesforce Experience Cloud. Includes property listings, maintenance requests, and a dashboard. Built with React, Vite, TypeScript, and Tailwind/shadcn.
4
+
5
+ For project-level details (metadata, deploy, sample data), see the [project README](../../../../../../README.md).
6
+
7
+ ## Prerequisites
8
+
9
+ ```bash
10
+ npm install
11
+ ```
12
+
13
+ ## Run (development)
14
+
15
+ ```bash
16
+ npm run dev
17
+ ```
18
+
19
+ Starts the Vite dev server (default: http://localhost:5173).
20
+
21
+ ## Build
22
+
23
+ ```bash
24
+ npm run build
25
+ ```
26
+
27
+ Writes the production bundle to `dist/` inside the UI Bundle folder.
28
+
29
+ ## Test
30
+
31
+ ```bash
32
+ npm test
33
+ ```
34
+
35
+ Runs the unit test suite (Vitest).
@@ -0,0 +1,95 @@
1
+ schema: '../../../../../schema.graphql'
2
+ documents: 'src/**/*.{graphql,ts,tsx}'
3
+ generates:
4
+ src/api/graphql-operations-types.ts:
5
+ plugins:
6
+ - 'graphql-codegen-typescript-operation-types'
7
+ - 'typescript-operations'
8
+ config:
9
+ onlyOperationTypes: true
10
+ skipTypename: true
11
+ preResolveTypes: true
12
+ scalars:
13
+ # String-serialized scalars
14
+ JSON:
15
+ input: 'string'
16
+ output: 'string'
17
+ Date:
18
+ input: 'string'
19
+ output: 'string'
20
+ DateTime:
21
+ input: 'string'
22
+ output: 'string'
23
+ Time:
24
+ input: 'string'
25
+ output: 'string'
26
+ Email:
27
+ input: 'string'
28
+ output: 'string'
29
+ Url:
30
+ input: 'string'
31
+ output: 'string'
32
+ PhoneNumber:
33
+ input: 'string'
34
+ output: 'string'
35
+ Picklist:
36
+ input: 'string'
37
+ output: 'string'
38
+ MultiPicklist:
39
+ input: 'string'
40
+ output: 'string'
41
+ TextArea:
42
+ input: 'string'
43
+ output: 'string'
44
+ LongTextArea:
45
+ input: 'string'
46
+ output: 'string'
47
+ RichTextArea:
48
+ input: 'string'
49
+ output: 'string'
50
+ EncryptedString:
51
+ input: 'string'
52
+ output: 'string'
53
+ Base64:
54
+ input: 'string'
55
+ output: 'string'
56
+ IdOrRef:
57
+ input: 'string'
58
+ output: 'string'
59
+ # BigDecimal-serialized scalars (accepts number or string, returns number)
60
+ Currency:
61
+ input: 'number | string'
62
+ output: 'number'
63
+ BigDecimal:
64
+ input: 'number | string'
65
+ output: 'number'
66
+ Double:
67
+ input: 'number | string'
68
+ output: 'number'
69
+ Percent:
70
+ input: 'number | string'
71
+ output: 'number'
72
+ Longitude:
73
+ input: 'number | string'
74
+ output: 'number'
75
+ Latitude:
76
+ input: 'number | string'
77
+ output: 'number'
78
+ # Integer-like scalars
79
+ Long:
80
+ input: 'number'
81
+ output: 'number'
82
+ BigInteger:
83
+ input: 'number'
84
+ output: 'number'
85
+ Short:
86
+ input: 'number'
87
+ output: 'number'
88
+ Byte:
89
+ input: 'number'
90
+ output: 'number'
91
+ Char:
92
+ input: 'number'
93
+ output: 'number'
94
+ overwrite: true
95
+ ignoreNoDocuments: true
@@ -0,0 +1,18 @@
1
+ {
2
+ "style": "new-york",
3
+ "rsc": true,
4
+ "tailwind": {
5
+ "config": "",
6
+ "css": "styles/global.css",
7
+ "baseColor": "neutral",
8
+ "cssVariables": true
9
+ },
10
+ "iconLibrary": "lucide",
11
+ "aliases": {
12
+ "components": "@/components",
13
+ "utils": "@/lib/utils",
14
+ "ui": "@/components/ui",
15
+ "lib": "@/lib",
16
+ "hooks": "@/hooks"
17
+ }
18
+ }
@@ -0,0 +1,17 @@
1
+ import { test, expect } from '@playwright/test';
2
+
3
+ test.describe('base-react-app', () => {
4
+ test('home page loads and shows welcome content', async ({ page }) => {
5
+ await page.goto('/');
6
+ await expect(page.getByRole('heading', { name: 'Home' })).toBeVisible();
7
+ await expect(
8
+ page.getByText('Welcome to your React application.')
9
+ ).toBeVisible();
10
+ });
11
+
12
+ test('not found route shows 404', async ({ page }) => {
13
+ await page.goto('/non-existent-route');
14
+ await expect(page.getByRole('heading', { name: '404' })).toBeVisible();
15
+ await expect(page.getByText('Page not found')).toBeVisible();
16
+ });
17
+ });
@@ -0,0 +1,169 @@
1
+ import { existsSync } from 'node:fs';
2
+ import { resolve } from 'node:path';
3
+ import { fileURLToPath } from 'node:url';
4
+ import { dirname } from 'node:path';
5
+ import js from '@eslint/js';
6
+ import tseslint from '@typescript-eslint/eslint-plugin';
7
+ import tsparser from '@typescript-eslint/parser';
8
+ import react from 'eslint-plugin-react';
9
+ import reactHooks from 'eslint-plugin-react-hooks';
10
+ import reactRefresh from 'eslint-plugin-react-refresh';
11
+ import globals from 'globals';
12
+ import graphqlPlugin from '@graphql-eslint/eslint-plugin';
13
+
14
+ const __dirname = dirname(fileURLToPath(import.meta.url));
15
+ const schemaPath = resolve(__dirname, '../../../../../schema.graphql');
16
+ const schemaExists = existsSync(schemaPath);
17
+
18
+ const config = [
19
+ // Global ignores
20
+ {
21
+ ignores: [
22
+ 'build/**/*',
23
+ 'dist/**/*',
24
+ 'coverage/**/*',
25
+ 'src/api/graphql-operations-types.ts',
26
+ ],
27
+ },
28
+ // Config files and build tools (first to avoid inheritance)
29
+ {
30
+ files: ['*.config.{js,ts}', 'vite.config.ts'],
31
+ languageOptions: {
32
+ parser: tsparser,
33
+ parserOptions: {
34
+ ecmaVersion: 'latest',
35
+ sourceType: 'module',
36
+ },
37
+ globals: {
38
+ ...globals.node,
39
+ __dirname: 'readonly',
40
+ process: 'readonly',
41
+ },
42
+ },
43
+ plugins: {
44
+ '@typescript-eslint': tseslint,
45
+ },
46
+ rules: {
47
+ '@typescript-eslint/no-var-requires': 'off',
48
+ },
49
+ },
50
+ // Main TypeScript/React files
51
+ {
52
+ files: ['**/*.{ts,tsx}'],
53
+ ignores: [
54
+ 'coverage',
55
+ 'dist',
56
+ 'node_modules',
57
+ 'build',
58
+ '*.config.{js,ts}',
59
+ 'vite.config.ts',
60
+ ],
61
+ languageOptions: {
62
+ ecmaVersion: 2020,
63
+ sourceType: 'module',
64
+ parser: tsparser,
65
+ parserOptions: {
66
+ ecmaFeatures: {
67
+ jsx: true,
68
+ },
69
+ ecmaVersion: 'latest',
70
+ sourceType: 'module',
71
+ project: './tsconfig.json',
72
+ },
73
+ globals: {
74
+ ...globals.browser,
75
+ JSX: 'readonly',
76
+ React: 'readonly',
77
+ process: 'readonly',
78
+ },
79
+ },
80
+ plugins: {
81
+ react,
82
+ 'react-hooks': reactHooks,
83
+ 'react-refresh': reactRefresh,
84
+ '@typescript-eslint': tseslint,
85
+ },
86
+ rules: {
87
+ ...js.configs.recommended.rules,
88
+ ...tseslint.configs.recommended.rules,
89
+ ...react.configs.recommended.rules,
90
+ ...reactHooks.configs.recommended.rules,
91
+ 'react/react-in-jsx-scope': 'off',
92
+ 'react/prop-types': 'off',
93
+ 'react/jsx-no-comment-textnodes': 'off',
94
+ 'react/no-unescaped-entities': 'off',
95
+ '@typescript-eslint/no-unused-vars': [
96
+ 'error',
97
+ {
98
+ argsIgnorePattern: '^_',
99
+ varsIgnorePattern: '^_',
100
+ caughtErrorsIgnorePattern: '^_',
101
+ ignoreRestSiblings: true,
102
+ },
103
+ ],
104
+ '@typescript-eslint/explicit-function-return-type': 'off',
105
+ '@typescript-eslint/explicit-module-boundary-types': 'off',
106
+ '@typescript-eslint/no-explicit-any': 'off',
107
+ 'react-hooks/set-state-in-effect': 'warn',
108
+ },
109
+ settings: {
110
+ react: {
111
+ version: 'detect',
112
+ },
113
+ },
114
+ },
115
+ // Test files
116
+ {
117
+ files: [
118
+ '**/*.test.{ts,tsx}',
119
+ '**/test/**/*.{ts,tsx}',
120
+ 'src/test/**/*.{ts,tsx}',
121
+ ],
122
+ languageOptions: {
123
+ parser: tsparser,
124
+ globals: {
125
+ ...globals.browser,
126
+ ...globals.node,
127
+ global: 'writable',
128
+ JSX: 'readonly',
129
+ },
130
+ },
131
+ rules: {
132
+ '@typescript-eslint/no-explicit-any': 'off',
133
+ },
134
+ },
135
+ ];
136
+
137
+ // Only add GraphQL rules when schema exists (e.g. after graphql:schema).
138
+ // In CI or when schema is not checked in, skip so lint succeeds.
139
+ if (schemaExists) {
140
+ config.push(
141
+ {
142
+ files: ['**/*.{ts,tsx}'],
143
+ processor: graphqlPlugin.processor,
144
+ },
145
+ {
146
+ files: ['**/*.graphql'],
147
+ languageOptions: {
148
+ parser: graphqlPlugin.parser,
149
+ parserOptions: {
150
+ graphQLConfig: {
151
+ schema: '../../../../../schema.graphql',
152
+ },
153
+ },
154
+ },
155
+ plugins: {
156
+ '@graphql-eslint': graphqlPlugin,
157
+ },
158
+ rules: {
159
+ '@graphql-eslint/no-anonymous-operations': 'error',
160
+ '@graphql-eslint/no-duplicate-fields': 'error',
161
+ '@graphql-eslint/known-fragment-names': 'error',
162
+ '@graphql-eslint/no-undefined-variables': 'error',
163
+ '@graphql-eslint/no-unused-variables': 'error',
164
+ },
165
+ }
166
+ );
167
+ }
168
+
169
+ export default config;
@@ -0,0 +1,18 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
7
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
8
+ <link
9
+ href="https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700&display=swap"
10
+ rel="stylesheet"
11
+ />
12
+ <title>ZENLEASE</title>
13
+ </head>
14
+ <body>
15
+ <div id="root"></div>
16
+ <script type="module" src="src/app.tsx"></script>
17
+ </body>
18
+ </html>