plain 0.1.0__py3-none-any.whl

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 (169) hide show
  1. plain/README.md +33 -0
  2. plain/__main__.py +5 -0
  3. plain/assets/README.md +56 -0
  4. plain/assets/__init__.py +6 -0
  5. plain/assets/finders.py +233 -0
  6. plain/assets/preflight.py +14 -0
  7. plain/assets/storage.py +916 -0
  8. plain/assets/utils.py +52 -0
  9. plain/assets/whitenoise/__init__.py +5 -0
  10. plain/assets/whitenoise/base.py +259 -0
  11. plain/assets/whitenoise/compress.py +189 -0
  12. plain/assets/whitenoise/media_types.py +137 -0
  13. plain/assets/whitenoise/middleware.py +197 -0
  14. plain/assets/whitenoise/responders.py +286 -0
  15. plain/assets/whitenoise/storage.py +178 -0
  16. plain/assets/whitenoise/string_utils.py +13 -0
  17. plain/cli/README.md +123 -0
  18. plain/cli/__init__.py +3 -0
  19. plain/cli/cli.py +439 -0
  20. plain/cli/formatting.py +61 -0
  21. plain/cli/packages.py +73 -0
  22. plain/cli/print.py +9 -0
  23. plain/cli/startup.py +33 -0
  24. plain/csrf/README.md +3 -0
  25. plain/csrf/middleware.py +466 -0
  26. plain/csrf/views.py +10 -0
  27. plain/debug.py +23 -0
  28. plain/exceptions.py +242 -0
  29. plain/forms/README.md +14 -0
  30. plain/forms/__init__.py +8 -0
  31. plain/forms/boundfield.py +58 -0
  32. plain/forms/exceptions.py +11 -0
  33. plain/forms/fields.py +1030 -0
  34. plain/forms/forms.py +297 -0
  35. plain/http/README.md +1 -0
  36. plain/http/__init__.py +51 -0
  37. plain/http/cookie.py +20 -0
  38. plain/http/multipartparser.py +743 -0
  39. plain/http/request.py +754 -0
  40. plain/http/response.py +719 -0
  41. plain/internal/__init__.py +0 -0
  42. plain/internal/files/README.md +3 -0
  43. plain/internal/files/__init__.py +3 -0
  44. plain/internal/files/base.py +161 -0
  45. plain/internal/files/locks.py +127 -0
  46. plain/internal/files/move.py +102 -0
  47. plain/internal/files/temp.py +79 -0
  48. plain/internal/files/uploadedfile.py +150 -0
  49. plain/internal/files/uploadhandler.py +254 -0
  50. plain/internal/files/utils.py +78 -0
  51. plain/internal/handlers/__init__.py +0 -0
  52. plain/internal/handlers/base.py +133 -0
  53. plain/internal/handlers/exception.py +145 -0
  54. plain/internal/handlers/wsgi.py +216 -0
  55. plain/internal/legacy/__init__.py +0 -0
  56. plain/internal/legacy/__main__.py +12 -0
  57. plain/internal/legacy/management/__init__.py +414 -0
  58. plain/internal/legacy/management/base.py +692 -0
  59. plain/internal/legacy/management/color.py +113 -0
  60. plain/internal/legacy/management/commands/__init__.py +0 -0
  61. plain/internal/legacy/management/commands/collectstatic.py +297 -0
  62. plain/internal/legacy/management/sql.py +67 -0
  63. plain/internal/legacy/management/utils.py +175 -0
  64. plain/json.py +40 -0
  65. plain/logs/README.md +24 -0
  66. plain/logs/__init__.py +5 -0
  67. plain/logs/configure.py +39 -0
  68. plain/logs/loggers.py +74 -0
  69. plain/logs/utils.py +46 -0
  70. plain/middleware/README.md +3 -0
  71. plain/middleware/__init__.py +0 -0
  72. plain/middleware/clickjacking.py +52 -0
  73. plain/middleware/common.py +87 -0
  74. plain/middleware/gzip.py +64 -0
  75. plain/middleware/security.py +64 -0
  76. plain/packages/README.md +41 -0
  77. plain/packages/__init__.py +4 -0
  78. plain/packages/config.py +259 -0
  79. plain/packages/registry.py +438 -0
  80. plain/paginator.py +187 -0
  81. plain/preflight/README.md +3 -0
  82. plain/preflight/__init__.py +38 -0
  83. plain/preflight/compatibility/__init__.py +0 -0
  84. plain/preflight/compatibility/django_4_0.py +20 -0
  85. plain/preflight/files.py +19 -0
  86. plain/preflight/messages.py +88 -0
  87. plain/preflight/registry.py +72 -0
  88. plain/preflight/security/__init__.py +0 -0
  89. plain/preflight/security/base.py +268 -0
  90. plain/preflight/security/csrf.py +40 -0
  91. plain/preflight/urls.py +117 -0
  92. plain/runtime/README.md +75 -0
  93. plain/runtime/__init__.py +61 -0
  94. plain/runtime/global_settings.py +199 -0
  95. plain/runtime/user_settings.py +353 -0
  96. plain/signals/README.md +14 -0
  97. plain/signals/__init__.py +5 -0
  98. plain/signals/dispatch/__init__.py +9 -0
  99. plain/signals/dispatch/dispatcher.py +320 -0
  100. plain/signals/dispatch/license.txt +35 -0
  101. plain/signing.py +299 -0
  102. plain/templates/README.md +20 -0
  103. plain/templates/__init__.py +6 -0
  104. plain/templates/core.py +24 -0
  105. plain/templates/jinja/README.md +227 -0
  106. plain/templates/jinja/__init__.py +22 -0
  107. plain/templates/jinja/defaults.py +119 -0
  108. plain/templates/jinja/extensions.py +39 -0
  109. plain/templates/jinja/filters.py +28 -0
  110. plain/templates/jinja/globals.py +19 -0
  111. plain/test/README.md +3 -0
  112. plain/test/__init__.py +16 -0
  113. plain/test/client.py +985 -0
  114. plain/test/utils.py +255 -0
  115. plain/urls/README.md +3 -0
  116. plain/urls/__init__.py +40 -0
  117. plain/urls/base.py +118 -0
  118. plain/urls/conf.py +94 -0
  119. plain/urls/converters.py +66 -0
  120. plain/urls/exceptions.py +9 -0
  121. plain/urls/resolvers.py +731 -0
  122. plain/utils/README.md +3 -0
  123. plain/utils/__init__.py +0 -0
  124. plain/utils/_os.py +52 -0
  125. plain/utils/cache.py +327 -0
  126. plain/utils/connection.py +84 -0
  127. plain/utils/crypto.py +76 -0
  128. plain/utils/datastructures.py +345 -0
  129. plain/utils/dateformat.py +329 -0
  130. plain/utils/dateparse.py +154 -0
  131. plain/utils/dates.py +76 -0
  132. plain/utils/deconstruct.py +54 -0
  133. plain/utils/decorators.py +90 -0
  134. plain/utils/deprecation.py +6 -0
  135. plain/utils/duration.py +44 -0
  136. plain/utils/email.py +12 -0
  137. plain/utils/encoding.py +235 -0
  138. plain/utils/functional.py +456 -0
  139. plain/utils/hashable.py +26 -0
  140. plain/utils/html.py +401 -0
  141. plain/utils/http.py +374 -0
  142. plain/utils/inspect.py +73 -0
  143. plain/utils/ipv6.py +46 -0
  144. plain/utils/itercompat.py +8 -0
  145. plain/utils/module_loading.py +69 -0
  146. plain/utils/regex_helper.py +353 -0
  147. plain/utils/safestring.py +72 -0
  148. plain/utils/termcolors.py +221 -0
  149. plain/utils/text.py +518 -0
  150. plain/utils/timesince.py +138 -0
  151. plain/utils/timezone.py +244 -0
  152. plain/utils/tree.py +126 -0
  153. plain/validators.py +603 -0
  154. plain/views/README.md +268 -0
  155. plain/views/__init__.py +18 -0
  156. plain/views/base.py +107 -0
  157. plain/views/csrf.py +24 -0
  158. plain/views/errors.py +25 -0
  159. plain/views/exceptions.py +4 -0
  160. plain/views/forms.py +76 -0
  161. plain/views/objects.py +229 -0
  162. plain/views/redirect.py +72 -0
  163. plain/views/templates.py +66 -0
  164. plain/wsgi.py +11 -0
  165. plain-0.1.0.dist-info/LICENSE +85 -0
  166. plain-0.1.0.dist-info/METADATA +51 -0
  167. plain-0.1.0.dist-info/RECORD +169 -0
  168. plain-0.1.0.dist-info/WHEEL +4 -0
  169. plain-0.1.0.dist-info/entry_points.txt +3 -0
@@ -0,0 +1,169 @@
1
+ plain/README.md,sha256=mFsLBpqiHvuznV98eewupvo1JoQeQG0q87wNlXit21A,1695
2
+ plain/__main__.py,sha256=BiYbF-txGNbeRqp_CHQ9EZ_bCbbKq2iw51Z8RRUgIBY,105
3
+ plain/assets/README.md,sha256=tjMoUWZHcpmdiinZgHbdyjH-jFmY4VWTDpasKA9rQ9k,1724
4
+ plain/assets/__init__.py,sha256=C2Wv_uiaPpHuFX5nOm6fXPJsyl1IUaRPX1wXzDuadNo,131
5
+ plain/assets/finders.py,sha256=fBfKM4CRE4W8LbWTqp40Dl_d_ddLk5-3AZL3ATK4eMY,7597
6
+ plain/assets/preflight.py,sha256=3myaUKAVTh-szwCrAqib1MDblTPrJSBlUzT1x51ADOw,376
7
+ plain/assets/storage.py,sha256=3tr6lP9yq68LBIjRY-seah5tXI5a6g_XpJzzM9WDKQo,35387
8
+ plain/assets/utils.py,sha256=Z_FQXEZHUw_MxzpJgwXUnwfGrUUS3p9KO3NNr0JED6c,1567
9
+ plain/assets/whitenoise/__init__.py,sha256=KkijLhLzq7g9HGOC-OcW8dWfNYEJFUrWqA3W1S7bHSY,91
10
+ plain/assets/whitenoise/base.py,sha256=6-8nI1WPKiMdGW1iqwkQMoS4me9k8TMm9xJKeaTSy7Q,10100
11
+ plain/assets/whitenoise/compress.py,sha256=UYUOYCkkhx82bmsoNDSxVbjGetGUGRLkBfthIpOJrDk,5471
12
+ plain/assets/whitenoise/media_types.py,sha256=knZ-VEYwyuKanHERBT_wEGDMpawYzw13TnBZVm8ENjs,5195
13
+ plain/assets/whitenoise/middleware.py,sha256=nzx8mgIR-gG6zqDCqVmffMjYOHbKmHwADueZ_QR1nQE,6849
14
+ plain/assets/whitenoise/responders.py,sha256=RozpNG0JGgOPZD7OWUH6oqp8arxhXQT1HuxFf-t9-Co,9859
15
+ plain/assets/whitenoise/storage.py,sha256=r2L_xM5_m4qcCUmAYhYst3wL8ZFOq5txoOJQbZKSYaE,6547
16
+ plain/assets/whitenoise/string_utils.py,sha256=wUqhuc_3CFAu5VPg03IPSnUe4SBdILoP9cmKzBH-2zA,489
17
+ plain/cli/README.md,sha256=bEp9B9C92YEa44wN2IywTmNZsYBv_uGq9AS_bBiAGdY,2580
18
+ plain/cli/__init__.py,sha256=9ByBOIdM8DebChjNz-RH2atdz4vWe8somlwNEsbhwh4,40
19
+ plain/cli/cli.py,sha256=wYpvA2DQ1G43OCUU7Q7CRjVBju4IljON2fafyTxhLWQ,12744
20
+ plain/cli/formatting.py,sha256=1hZH13y1qwHcU2K2_Na388nw9uvoeQH8LrWL-O9h8Yc,2207
21
+ plain/cli/packages.py,sha256=69VH1bIi1-5N5l2jlBcR5EP0pt-v16sPar9arO3gCSE,2052
22
+ plain/cli/print.py,sha256=XraUYrgODOJquIiEv78wSCYGRBplHXtXSS9QtFG5hqY,217
23
+ plain/cli/startup.py,sha256=PJYA-tNWGia-QbTlT0e5HvC8C7yDSq8wkAkIxgfKkvw,680
24
+ plain/csrf/README.md,sha256=GHHMf4KEtGebU1nyg5Vk5Dti5SHJIGwc-J2hU5UEF7w,54
25
+ plain/csrf/middleware.py,sha256=I7Ev-Y-VaR-Fgs_arVYNePt4qjwF_PozFBCqER2UMIY,18642
26
+ plain/csrf/views.py,sha256=YDgT451X16iUdCxpQ6rcHIy7nD0u7DAvCQl5-Mx5i9Y,219
27
+ plain/debug.py,sha256=j9HDzue5BXC-Ax__Gg9KvJCFrHjwtydvcZz3PhWgAOM,530
28
+ plain/exceptions.py,sha256=tDS6l0epe_L9IlxpEdT2k2hWgEoAu8YBNIumNCtJ-WY,6333
29
+ plain/forms/README.md,sha256=fglB9MmHiEgfGGdZmcRstNl6eYaFljrElu2mzapK52M,377
30
+ plain/forms/__init__.py,sha256=UxqPwB8CiYPCQdHmUc59jadqaXqDmXBH8y4bt9vTPms,226
31
+ plain/forms/boundfield.py,sha256=LhydhCVR0okrli0-QBMjGjAJ8-06gTCXVEaBZhBouQk,1741
32
+ plain/forms/exceptions.py,sha256=XCLDRl5snIEDu5-8mLB0NnU_tegcBfyIHMiJxqvbxnc,164
33
+ plain/forms/fields.py,sha256=nyL1-NLAIt2jvEhGt4VwUy7xsXrVuU_wMuMzRXVhleA,35178
34
+ plain/forms/forms.py,sha256=QgIV4JDLXzM8wfLYVZUUNH5kmJlQYQVG6UAENrxFIBo,10357
35
+ plain/http/README.md,sha256=00zLFQ-FPjYXu3A8QsLhCCXxaT0ImvI5I-8xd3dp8WA,7
36
+ plain/http/__init__.py,sha256=DIsDRbBsCGa4qZgq-fUuQS0kkxfbTU_3KpIM9VvH04w,1067
37
+ plain/http/cookie.py,sha256=11FnSG3Plo6T3jZDbPoCw7SKh9ExdBio3pTmIO03URg,597
38
+ plain/http/multipartparser.py,sha256=Z2PFDuGucj_nFnQagwdxowJcZHqzCfDApkXl5yRlRe4,27325
39
+ plain/http/request.py,sha256=sRHjXOrxFMPIXSbwa6-hXJHNhR-EF4E5IprGtHUqeyE,26007
40
+ plain/http/response.py,sha256=h43Gx4PVPGEf63EHHrABYtwYu-8Y9mgAebwiGt8qeLE,24074
41
+ plain/internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
+ plain/internal/files/README.md,sha256=kMux-NU5qiH0o1K8IajYQT8VjrYl_jLk9LkGG_kGuSc,45
43
+ plain/internal/files/__init__.py,sha256=VctFgox4Q1AWF3klPaoCC5GIw5KeLafYjY5JmN8mAVw,63
44
+ plain/internal/files/base.py,sha256=CSq_BPKWY2kUib7pnoIvzi40isEyrKdkx1yHb8nPtLc,4817
45
+ plain/internal/files/locks.py,sha256=FaRze8qXnHFNVv9w7wLw8XAMBJGTQPKLg1j5l89r0HI,3615
46
+ plain/internal/files/move.py,sha256=UK5ureNamr8lh7EvOvo6SqrUa-9MKHT44qgVktPmD5Q,3256
47
+ plain/internal/files/temp.py,sha256=UJJnCI8dqPIC8XXHU3-jG2-0svbkrgGlBs4yhciLm4c,2506
48
+ plain/internal/files/uploadedfile.py,sha256=JRB7T3quQjg-1y3l1ASPxywtSQZhaeMc45uFPIxvl7c,4192
49
+ plain/internal/files/uploadhandler.py,sha256=BZGQDHJMEUeBh9uJtxNVWQkFmHE7jzVTx9CLVt59Jqg,7197
50
+ plain/internal/files/utils.py,sha256=XrHAs2tMqmywURgz5C6-GSj6sr2R-MCERcWT8yzBp5k,2652
51
+ plain/internal/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
+ plain/internal/handlers/base.py,sha256=LcKKRtKlBk17Iy_8MRbx7wskULpnhHzA0fOlunzd9Lo,4506
53
+ plain/internal/handlers/exception.py,sha256=KUZSBzmzE6YSFxAZ336Mye_9vAPVIj9Av-w1SK5R4PA,4579
54
+ plain/internal/handlers/wsgi.py,sha256=WIZvXlEAOn8lxwDM_HpSP82-ePKVu-Tzgpe65KkXEMk,7538
55
+ plain/internal/legacy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
+ plain/internal/legacy/__main__.py,sha256=DY5iMUCva6mC6sIjMMYluLWYzlbJv_za0gclIShFwJg,358
57
+ plain/internal/legacy/management/__init__.py,sha256=RTZvasu5oeLdpJ5txMXEmBOXLNiLX22Q2OfrjdtBmug,16084
58
+ plain/internal/legacy/management/base.py,sha256=1gcco3NvX52bv4ecyrjgicOjVENPgfG7QqHhMnhehKA,24400
59
+ plain/internal/legacy/management/color.py,sha256=Oz4KsUwIfNtLZ6ecAPsoe2LaBGjt69pd3MEWMHkM2sU,2857
60
+ plain/internal/legacy/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
61
+ plain/internal/legacy/management/commands/collectstatic.py,sha256=_rwksdRbXXUzoWu6SMEtNw8XcI7TxExKtegmhyXTWOU,11639
62
+ plain/internal/legacy/management/sql.py,sha256=Yp_E6fSdS9OAL7oWimqbzxCB6740GPqG6_gO6_QdL6g,2106
63
+ plain/internal/legacy/management/utils.py,sha256=BeOiNnx26bkbq_OAOn5j1mxQ8UASnGCnZI5xuRwgnhU,5495
64
+ plain/json.py,sha256=McJdsbMT1sYwkGRG--f2NSZz0hVXPMix9x3nKaaak2o,1262
65
+ plain/logs/README.md,sha256=H6uVXdInYlasq0Z1WnhWnPmNwYQoZ1MSLPDQ4ZE7u4A,492
66
+ plain/logs/__init__.py,sha256=rASvo4qFBDIHfkACmGLNGa6lRGbG9PbNjW6FmBt95ys,168
67
+ plain/logs/configure.py,sha256=6mV7d1IxkDYT3VBz61qhIj0Esuy5l5QdQfsHaGCfI6w,1063
68
+ plain/logs/loggers.py,sha256=iz9SYcwP9w5QAuwpULl48SFkVyJuuMoQ_fdLgdCHpNg,2121
69
+ plain/logs/utils.py,sha256=9UzdCCQXJinGDs71Ngw297mlWkhgZStSd67ya4NOW98,1257
70
+ plain/middleware/README.md,sha256=MgiLHwAfP8ooBSlDi1JhTwIHMlwphOqAkeWglYRbe8s,52
71
+ plain/middleware/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
+ plain/middleware/clickjacking.py,sha256=MJOHWSDqJB8K6YE6XTh34uyr2LNKuE9XsywZRRsljFk,1764
73
+ plain/middleware/common.py,sha256=-YySkYUyaRujYA5Yg7GRD3xFjlQOZpeJP1Stpt6pias,3631
74
+ plain/middleware/gzip.py,sha256=2NogLO6hPxVc3otxkhMDl7-r2Zw3vcIkAP29fx4j2eU,2383
75
+ plain/middleware/security.py,sha256=r9UatFEaKVL1eZ5AxAuVX9uf5eLKwImEZmjL2t1slaY,2477
76
+ plain/packages/README.md,sha256=Vq1Nw3mmEmZ2IriQavuVi4BjcQC2nb8k7YIbnm8QjIg,799
77
+ plain/packages/__init__.py,sha256=DnHN1wwHXiXib4Y9BV__x9WrbUaTovoTIxW-tVyScTU,106
78
+ plain/packages/config.py,sha256=sgRK2oaGXyJoDw3X5-gkp13i_oqEX5Q7dRYvX_m01AQ,11219
79
+ plain/packages/registry.py,sha256=UlCreLfEvDid0JyCm2few2g5UroPHhOsrRUjxzapBcA,18209
80
+ plain/paginator.py,sha256=4v5SbYotJH9HoNdzf-1j-AEy4ZLbLPuysf-VME4-6e0,6055
81
+ plain/preflight/README.md,sha256=fgcfVRD6rq7IO8AffQhk49c-6akxaE8MQidRp69InDQ,59
82
+ plain/preflight/__init__.py,sha256=odGgSal4YeWjIG9N2aJzlF1WyEJMx1c7ZP853ZTrbKM,735
83
+ plain/preflight/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
+ plain/preflight/compatibility/django_4_0.py,sha256=xFxap12rdSSUPW1q9OCcbRLejTxJ04CZfvVL2sdxDBk,636
85
+ plain/preflight/files.py,sha256=wbHCNgps7o1c1zQNBd8FDCaVaqX90UwuvLgEQ_DbUpY,510
86
+ plain/preflight/messages.py,sha256=u0oc7q7YmBlKYJRcF5SQpzncfOkEzDhZTcpyclQDfHg,2427
87
+ plain/preflight/registry.py,sha256=ZpxnZPIklXuT8xZVTxCUp_IER3zhd7DdfsmqIpAbLj4,2306
88
+ plain/preflight/security/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
+ plain/preflight/security/base.py,sha256=MjY1HXfUD4fsGz1kGs0eI2hpoSmD57x_30CMbLpw3h4,8445
90
+ plain/preflight/security/csrf.py,sha256=EZy_DkVqc1kUmBA-UbNmhVsKhRINfmqgWSRlatKy5AA,1237
91
+ plain/preflight/urls.py,sha256=AsY2Y-IrHUSJBvS7NLOQaACMmxuoysEqklv12Py_Vdk,3273
92
+ plain/runtime/README.md,sha256=l83rCKSmfYsUXyxTLM5r22qtzXT6Hwn5nl_r79p3_uQ,2333
93
+ plain/runtime/__init__.py,sha256=qn55uY3uY83Mp0gaJRd33gy9ETC-wjhu5PHnBb0uQOk,1401
94
+ plain/runtime/global_settings.py,sha256=gzgxH0a-jzct6_pLt0Fz-UumtnvcmM6erN28EGMtPng,6552
95
+ plain/runtime/user_settings.py,sha256=1PQuPgO-D91Gf4mqiqS06NWwNVIfjnGw9sBam-5trtc,12862
96
+ plain/signals/README.md,sha256=cd3tKEgH-xc88CUWyDxl4-qv-HBXx8VT32BXVwA5azA,230
97
+ plain/signals/__init__.py,sha256=eAs0kLqptuP6I31dWXeAqRNji3svplpAV4Ez6ktjwXM,131
98
+ plain/signals/dispatch/__init__.py,sha256=FzEygqV9HsM6gopio7O2Oh_X230nA4d5Q9s0sUjMq0E,292
99
+ plain/signals/dispatch/dispatcher.py,sha256=VxSlqn9PCOTghPPJLOqZPs6FNQZfV2BJpMfFMSg6Dtc,11531
100
+ plain/signals/dispatch/license.txt,sha256=o9EhDhsC4Q5HbmD-IfNGVTEkXtNE33r5rIt3lleJ8gc,1727
101
+ plain/signing.py,sha256=rCsizsluW-lt8ihwicf19kU-sOewMvkIbeI9MrFNwOw,9491
102
+ plain/templates/README.md,sha256=VfA2HmrklG5weE1md85q9g84cWnMBEiXAynKzM7S1Sk,464
103
+ plain/templates/__init__.py,sha256=Jh1jit55UR4dRpklQ6qAN2ixzYZBVoDi0AOdfD4Nh4E,106
104
+ plain/templates/core.py,sha256=iw58EAmyyv8N5HDA-Sq4-fLgz_qx8v8WJfurgR116jw,625
105
+ plain/templates/jinja/README.md,sha256=2i0HUQmNnqKlbHWzWqFdKl0WaqNOy1CEUY_hCHQDZis,7223
106
+ plain/templates/jinja/__init__.py,sha256=1VAyXRHf2hDPniZfnKhiMWsOp4Gkg0Ss1xmAbuvZvbU,645
107
+ plain/templates/jinja/defaults.py,sha256=AhGxp8X4UNC6CRD0XygQDV3ZeIs4KH2NaCjPtlgFeL0,3770
108
+ plain/templates/jinja/extensions.py,sha256=AEmmmHDbdRW8fhjYDzq9eSSNbp9WHsXenD8tPthjc0s,1351
109
+ plain/templates/jinja/filters.py,sha256=3KJKKbxcv9dLzUDWPcaa88k3NU2m1GG3iMIgFhzXrBA,860
110
+ plain/templates/jinja/globals.py,sha256=hfgc1BDOQGYYi-EN_NkrBOuA7J4eGtU6tqXew3ZVtgk,474
111
+ plain/test/README.md,sha256=Zso3Ir7a8vQerzKB6egjROQWkpveLAbscn7VTROPAiU,37
112
+ plain/test/__init__.py,sha256=oo3mXAYB4Nh9ZJrV8aFyg12FbrJB_ZuhvEs0MsWBsa0,307
113
+ plain/test/client.py,sha256=c3ccINnDA489TB8PB2ymYAh34rhFV2THrGG1WjC56EA,31971
114
+ plain/test/utils.py,sha256=TELutP9vFYt6RtgX-7gTR0vbZV-UYTLZ7u46h3oXRwE,8546
115
+ plain/urls/README.md,sha256=pWnCvgYkWN7rG7hSyBOtX4ZUP3iO7FhqM6lvwwYll6c,33
116
+ plain/urls/__init__.py,sha256=3UzwIufXjIks2K_X_Vms2MV19IqvyPLrXUeHU3WP47c,753
117
+ plain/urls/base.py,sha256=ECaOCEXs1ygKn4k1mt5XxSNPNlg5raJvx0aPaj7DFfE,3719
118
+ plain/urls/conf.py,sha256=l-xh_MdoMYScUHYjp0OQT-YGZ6wMaVnEK_TYwZWJvNM,3475
119
+ plain/urls/converters.py,sha256=s2JZVOdzZC16lgobsI93hygcdH5L0Kj4742WEkXsVcs,1193
120
+ plain/urls/exceptions.py,sha256=q4iPh3Aa-zHbA-tw8v6WyX1J1n5WdAady2xvxFuyXB0,114
121
+ plain/urls/resolvers.py,sha256=lDQ1ZpIxE9ekoJKE5TYUDKMmCtPcM3y-KvSWMuwUCD0,27819
122
+ plain/utils/README.md,sha256=Bf5OG-MkOJDz_U8RGVreDfAI4M4nnPaLtk-LdinxHSc,99
123
+ plain/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
+ plain/utils/_os.py,sha256=oqfiKZRbmHwwWSZP36SIajQnFDbImbB6gcyK0idAGl4,1988
125
+ plain/utils/cache.py,sha256=vJeQOWy_kE7jhgwmYjRTMXFvsOYtuPAhHWCjcxEYioU,11475
126
+ plain/utils/connection.py,sha256=NN7xRhy6qIWuOOhi1x9YdGcFcYhKepTiMUETeEMS0vY,2501
127
+ plain/utils/crypto.py,sha256=45K6_vF-wPXhOAaCVi98XlHS3-HruzPptSbFf7f1tPA,2661
128
+ plain/utils/datastructures.py,sha256=7Su4facKKCv3ae78Kadb--kynYxA37F47CZtOwrj9GY,10225
129
+ plain/utils/dateformat.py,sha256=pppxIDsnLuNw8HhHfVuAC9VUeDXW2-QTh19XZlkxDsY,10039
130
+ plain/utils/dateparse.py,sha256=6TeWydNK03lL13TIaXGS_MdRlBdzThlLLI4TSSzy5hY,5360
131
+ plain/utils/dates.py,sha256=hSDKz8eIb3W5QjmGiklFZZELB0inYXsfiRUy49Cx-2Q,1226
132
+ plain/utils/deconstruct.py,sha256=7NwEFIDCiadAArUBFmiErzDgfIgDWeKqqQFDXwSgQoQ,1830
133
+ plain/utils/decorators.py,sha256=Ma3cqRpCcVIKXOFrxCVmeuKOiLnToP9QbXsJqllrHOw,3470
134
+ plain/utils/deprecation.py,sha256=qtj33kHEmJU7mGSrNcKidZsMo5W8MN-zrXzUq3aVVy8,131
135
+ plain/utils/duration.py,sha256=l0Gc41-DeyyAmpdy2XG-YO5UKxMf1NDpWIlQuD5hAn0,1162
136
+ plain/utils/email.py,sha256=puRTBVuz44YvpnqV3LT4nNIKqdqfY3L8zbDJIkqHk2Y,328
137
+ plain/utils/encoding.py,sha256=z8c7HxYW6wQiE4csx5Ui3WvzgbDzLGXY2aCP04_GZd4,7900
138
+ plain/utils/functional.py,sha256=7Z1LuPpS1y0ignX7QDzPq6zJqDZdCf_rFYLRR1rTSG0,14806
139
+ plain/utils/hashable.py,sha256=uLWobCCh7VcEPJ7xzVGPgigNVuTazYJbyzRzHTCI_wo,739
140
+ plain/utils/html.py,sha256=H1qK727hlS5_UFoMQ9US1CDFJ83_43Xvx-NpS3d0t9o,13494
141
+ plain/utils/http.py,sha256=fHeYGZcVFv4_AuhbSEGw6EPPMtwp7rE-HUCoMdGq-wU,12725
142
+ plain/utils/inspect.py,sha256=lhDEOtmSLEub5Jj__MIgW3AyWOEVkaA6doJKKwBhZ6A,2235
143
+ plain/utils/ipv6.py,sha256=AqqDWtMaLGW7kyziWy9eP5EI0E4D4ik4031faYGX6PU,1269
144
+ plain/utils/itercompat.py,sha256=lacIDjczhxbwG4ON_KfG1H6VNPOGOpbRhnVhbedo2CY,184
145
+ plain/utils/module_loading.py,sha256=_Omv4eCFmnQHSkxapweHOqR8OvSqpylbrxgwNcFGYZs,2256
146
+ plain/utils/regex_helper.py,sha256=EsaHtNi7pkYRYVTYDm7k39ge7MVbBUD6LIRiO70Iw4Q,12766
147
+ plain/utils/safestring.py,sha256=SHGhpbX6FFDKSYOY9zYAgAQX0g0exzRba7dM2bJalWs,1873
148
+ plain/utils/termcolors.py,sha256=78MimQMp4Etoh1X1lokOJ6ucxErHtg8z9rxeTtV5nhk,7394
149
+ plain/utils/text.py,sha256=QxhJsk_4VrNVUtwwo0DXGTMHJ1x_hrKOqJOxlPB33qc,16596
150
+ plain/utils/timesince.py,sha256=essdb0XWBKWmKtIprs-4rO0qKTtsFqZ0Fwn-RTDyhOc,4758
151
+ plain/utils/timezone.py,sha256=tFd4NfQNwTiHKExNxTc0wWKUpDZximHlcN0Ykv-wQ6k,6910
152
+ plain/utils/tree.py,sha256=wdWzmfsgc26YDF2wxhAY3yVxXTixQYqYDKE9mL3L3ZY,4383
153
+ plain/validators.py,sha256=L9v9KtTe4iZhZVramZdKGf33R5Tt95FCdg2AJD2-2n0,19963
154
+ plain/views/README.md,sha256=qndsXKyNMnipPlLaAvgQeGxqXknNQwlFh31Yxk8rHp8,5994
155
+ plain/views/__init__.py,sha256=a-N1nkklVohJTtz0yD1MMaS0g66HviEjsKydNVVjvVc,392
156
+ plain/views/base.py,sha256=8g21fvbZKR-Nrr_Sf2_R8CanylYMKgnZNSBEcg6m4Gs,3120
157
+ plain/views/csrf.py,sha256=gO9npd_Ut_LoYF_u7Qb_ZsPRfSeE3aTPG97XlMp4oEo,724
158
+ plain/views/errors.py,sha256=h8r1mrQwPTTLzKTshYOKaQBx8peXZIJSJD4pjSGrUQw,781
159
+ plain/views/exceptions.py,sha256=b4euI49ZUKS9O8AGAcFfiDpstzkRAuuj_uYQXzWNHME,138
160
+ plain/views/forms.py,sha256=hyi2yjPvl0f4thU3pcKUEjqzUAN95yIJSCZAOdgSlF8,2663
161
+ plain/views/objects.py,sha256=9QBYyb8PgkRirXCQ8-Pms4_yMzP37dfeL30hWRYmtZg,7909
162
+ plain/views/redirect.py,sha256=KLnlktzK6ZNMTlaEiZpMKQMEP5zeTgGLJ9BIkIJfwBo,1733
163
+ plain/views/templates.py,sha256=nF9CcdhhjAyp3LB0RrSYnBaHpHzMfPSw719RCdcXk7o,2007
164
+ plain/wsgi.py,sha256=R6k5FiAElvGDApEbMPTT0MPqSD7n2e2Az5chQqJZU0I,236
165
+ plain-0.1.0.dist-info/LICENSE,sha256=Dz4Dapr9r65LuCGJkZzCFbOVcr5hfzFkLRcjXFQq2qU,4327
166
+ plain-0.1.0.dist-info/METADATA,sha256=JZuDEpdHB2_XCYUQZL10WQtIS_SH5AHJWz5X56y9Q7I,2716
167
+ plain-0.1.0.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
168
+ plain-0.1.0.dist-info/entry_points.txt,sha256=7O1RZTmMasKYB73bfqQcTwIhsXo7RjEIKv2WbtTtOIM,39
169
+ plain-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: poetry-core 1.8.1
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ plain=plain.cli:cli
3
+