create-plasmic-app 0.0.62 → 0.0.64

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 (209) hide show
  1. package/README.internal.md +6 -2
  2. package/cpa-out/.gitignore +15 -0
  3. package/cpa-out/gatsby-codegen-js/gatsby-browser.jsx +11 -0
  4. package/cpa-out/gatsby-codegen-js/gatsby-config.js +9 -0
  5. package/cpa-out/gatsby-codegen-js/gatsby-node.js +0 -0
  6. package/cpa-out/gatsby-codegen-js/gatsby-ssr.jsx +11 -0
  7. package/cpa-out/gatsby-codegen-js/package.json +26 -0
  8. package/cpa-out/gatsby-codegen-js/plasmic.json +79 -0
  9. package/cpa-out/gatsby-codegen-js/src/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.jsx +29 -0
  10. package/cpa-out/gatsby-codegen-js/src/components/plasmic/create_plasmic_app/PlasmicHomepage.jsx +206 -0
  11. package/cpa-out/gatsby-codegen-js/src/pages/404.js +4 -0
  12. package/cpa-out/gatsby-codegen-js/src/pages/index.jsx +39 -0
  13. package/cpa-out/gatsby-codegen-ts/gatsby-browser.tsx +11 -0
  14. package/cpa-out/gatsby-codegen-ts/gatsby-config.ts +14 -0
  15. package/cpa-out/gatsby-codegen-ts/gatsby-node.ts +0 -0
  16. package/cpa-out/gatsby-codegen-ts/gatsby-ssr.tsx +11 -0
  17. package/cpa-out/gatsby-codegen-ts/package.json +34 -0
  18. package/cpa-out/gatsby-codegen-ts/plasmic.json +79 -0
  19. package/cpa-out/gatsby-codegen-ts/src/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.tsx +30 -0
  20. package/cpa-out/gatsby-codegen-ts/src/components/plasmic/create_plasmic_app/PlasmicHomepage.tsx +290 -0
  21. package/cpa-out/gatsby-codegen-ts/src/pages/404.js +4 -0
  22. package/cpa-out/gatsby-codegen-ts/src/pages/index.tsx +41 -0
  23. package/cpa-out/gatsby-codegen-ts/tsconfig.json +102 -0
  24. package/cpa-out/gatsby-loader-js/gatsby-config.js +25 -0
  25. package/cpa-out/gatsby-loader-js/gatsby-node.js +0 -0
  26. package/cpa-out/gatsby-loader-js/gatsby-ssr.jsx +44 -0
  27. package/cpa-out/gatsby-loader-js/package.json +24 -0
  28. package/cpa-out/gatsby-loader-js/src/pages/404.js +4 -0
  29. package/cpa-out/gatsby-loader-js/src/pages/plasmic-host.jsx +19 -0
  30. package/cpa-out/gatsby-loader-js/src/plasmic-init.js +18 -0
  31. package/cpa-out/gatsby-loader-js/src/templates/defaultPlasmicPage.jsx +44 -0
  32. package/cpa-out/gatsby-loader-ts/gatsby-config.ts +31 -0
  33. package/cpa-out/gatsby-loader-ts/gatsby-node.ts +0 -0
  34. package/cpa-out/gatsby-loader-ts/gatsby-ssr.tsx +44 -0
  35. package/cpa-out/gatsby-loader-ts/package.json +32 -0
  36. package/cpa-out/gatsby-loader-ts/src/pages/404.ts +4 -0
  37. package/cpa-out/gatsby-loader-ts/src/pages/plasmic-host.tsx +24 -0
  38. package/cpa-out/gatsby-loader-ts/src/plasmic-init.ts +19 -0
  39. package/cpa-out/gatsby-loader-ts/src/templates/defaultPlasmicPage.tsx +52 -0
  40. package/cpa-out/gatsby-loader-ts/tsconfig.json +102 -0
  41. package/cpa-out/nextjs-app-loader-js/app/[[...catchall]]/page.jsx +56 -0
  42. package/cpa-out/nextjs-app-loader-js/app/head.js +10 -0
  43. package/cpa-out/nextjs-app-loader-js/app/layout.js +14 -0
  44. package/cpa-out/nextjs-app-loader-js/app/plasmic-host/page.jsx +6 -0
  45. package/cpa-out/nextjs-app-loader-js/next.config.js +13 -0
  46. package/cpa-out/nextjs-app-loader-js/package.json +20 -0
  47. package/cpa-out/nextjs-app-loader-js/pages/api/hello.js +5 -0
  48. package/cpa-out/nextjs-app-loader-js/plasmic-init-client.jsx +65 -0
  49. package/cpa-out/nextjs-app-loader-js/plasmic-init.js +16 -0
  50. package/cpa-out/nextjs-app-loader-ts/app/[[...catchall]]/page.tsx +59 -0
  51. package/cpa-out/nextjs-app-loader-ts/app/head.tsx +10 -0
  52. package/cpa-out/nextjs-app-loader-ts/app/layout.tsx +18 -0
  53. package/cpa-out/nextjs-app-loader-ts/app/plasmic-host/page.tsx +6 -0
  54. package/cpa-out/nextjs-app-loader-ts/next.config.js +13 -0
  55. package/cpa-out/nextjs-app-loader-ts/package.json +24 -0
  56. package/cpa-out/nextjs-app-loader-ts/pages/api/hello.ts +13 -0
  57. package/cpa-out/nextjs-app-loader-ts/plasmic-init-client.tsx +65 -0
  58. package/cpa-out/nextjs-app-loader-ts/plasmic-init.ts +16 -0
  59. package/cpa-out/nextjs-app-loader-ts/tsconfig.json +29 -0
  60. package/cpa-out/nextjs-pages-codegen-js/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.jsx +29 -0
  61. package/cpa-out/nextjs-pages-codegen-js/components/plasmic/create_plasmic_app/PlasmicHomepage.jsx +205 -0
  62. package/cpa-out/nextjs-pages-codegen-js/next.config.js +10 -0
  63. package/cpa-out/nextjs-pages-codegen-js/package.json +22 -0
  64. package/cpa-out/nextjs-pages-codegen-js/pages/_app.jsx +11 -0
  65. package/cpa-out/nextjs-pages-codegen-js/pages/api/hello.js +5 -0
  66. package/cpa-out/nextjs-pages-codegen-js/pages/index.jsx +35 -0
  67. package/cpa-out/nextjs-pages-codegen-js/pages/plasmic-host.jsx +15 -0
  68. package/cpa-out/nextjs-pages-codegen-js/plasmic.json +79 -0
  69. package/cpa-out/nextjs-pages-codegen-ts/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.tsx +30 -0
  70. package/cpa-out/nextjs-pages-codegen-ts/components/plasmic/create_plasmic_app/PlasmicHomepage.tsx +287 -0
  71. package/cpa-out/nextjs-pages-codegen-ts/next.config.js +10 -0
  72. package/cpa-out/nextjs-pages-codegen-ts/package.json +26 -0
  73. package/cpa-out/nextjs-pages-codegen-ts/pages/_app.tsx +12 -0
  74. package/cpa-out/nextjs-pages-codegen-ts/pages/api/hello.ts +13 -0
  75. package/cpa-out/nextjs-pages-codegen-ts/pages/index.tsx +37 -0
  76. package/cpa-out/nextjs-pages-codegen-ts/pages/plasmic-host.tsx +15 -0
  77. package/cpa-out/nextjs-pages-codegen-ts/plasmic.json +79 -0
  78. package/cpa-out/nextjs-pages-codegen-ts/tsconfig.json +24 -0
  79. package/cpa-out/nextjs-pages-loader-js/next.config.js +10 -0
  80. package/cpa-out/nextjs-pages-loader-js/package.json +20 -0
  81. package/cpa-out/nextjs-pages-loader-js/pages/[[...catchall]].jsx +66 -0
  82. package/cpa-out/nextjs-pages-loader-js/pages/api/hello.js +5 -0
  83. package/cpa-out/nextjs-pages-loader-js/pages/plasmic-host.jsx +7 -0
  84. package/cpa-out/nextjs-pages-loader-js/plasmic-init.js +25 -0
  85. package/cpa-out/nextjs-pages-loader-ts/next.config.js +10 -0
  86. package/cpa-out/nextjs-pages-loader-ts/package.json +24 -0
  87. package/cpa-out/nextjs-pages-loader-ts/pages/[[...catchall]].tsx +70 -0
  88. package/cpa-out/nextjs-pages-loader-ts/pages/api/hello.ts +13 -0
  89. package/cpa-out/nextjs-pages-loader-ts/pages/plasmic-host.tsx +7 -0
  90. package/cpa-out/nextjs-pages-loader-ts/plasmic-init.ts +25 -0
  91. package/cpa-out/nextjs-pages-loader-ts/tsconfig.json +24 -0
  92. package/cpa-out/react-codegen-js/package.json +41 -0
  93. package/cpa-out/react-codegen-js/plasmic.json +76 -0
  94. package/cpa-out/react-codegen-js/src/App.jsx +9 -0
  95. package/cpa-out/react-codegen-js/src/components/Homepage.jsx +26 -0
  96. package/cpa-out/react-codegen-js/src/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.jsx +29 -0
  97. package/cpa-out/react-codegen-js/src/components/plasmic/create_plasmic_app/PlasmicHomepage.jsx +196 -0
  98. package/cpa-out/react-codegen-js/src/index.js +17 -0
  99. package/cpa-out/react-codegen-js/src/reportWebVitals.js +13 -0
  100. package/cpa-out/react-codegen-js/src/setupTests.js +5 -0
  101. package/cpa-out/react-codegen-ts/package.json +46 -0
  102. package/cpa-out/react-codegen-ts/plasmic.json +76 -0
  103. package/cpa-out/react-codegen-ts/src/App.tsx +9 -0
  104. package/cpa-out/react-codegen-ts/src/components/Homepage.tsx +45 -0
  105. package/cpa-out/react-codegen-ts/src/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.tsx +30 -0
  106. package/cpa-out/react-codegen-ts/src/components/plasmic/create_plasmic_app/PlasmicHomepage.tsx +280 -0
  107. package/cpa-out/react-codegen-ts/src/index.tsx +19 -0
  108. package/cpa-out/react-codegen-ts/src/react-app-env.d.ts +1 -0
  109. package/cpa-out/react-codegen-ts/src/reportWebVitals.ts +15 -0
  110. package/cpa-out/react-codegen-ts/src/setupTests.ts +5 -0
  111. package/cpa-out/react-codegen-ts/tsconfig.json +26 -0
  112. package/cpa-out/react-loader-js/package.json +41 -0
  113. package/cpa-out/react-loader-js/plasmic.json +76 -0
  114. package/cpa-out/react-loader-js/src/App.jsx +9 -0
  115. package/cpa-out/react-loader-js/src/components/Homepage.jsx +26 -0
  116. package/cpa-out/react-loader-js/src/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.jsx +29 -0
  117. package/cpa-out/react-loader-js/src/components/plasmic/create_plasmic_app/PlasmicHomepage.jsx +196 -0
  118. package/cpa-out/react-loader-js/src/index.js +17 -0
  119. package/cpa-out/react-loader-js/src/reportWebVitals.js +13 -0
  120. package/cpa-out/react-loader-js/src/setupTests.js +5 -0
  121. package/cpa-out/react-loader-ts/package.json +46 -0
  122. package/cpa-out/react-loader-ts/plasmic.json +76 -0
  123. package/cpa-out/react-loader-ts/src/App.tsx +9 -0
  124. package/cpa-out/react-loader-ts/src/components/Homepage.tsx +45 -0
  125. package/cpa-out/react-loader-ts/src/components/plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.tsx +30 -0
  126. package/cpa-out/react-loader-ts/src/components/plasmic/create_plasmic_app/PlasmicHomepage.tsx +280 -0
  127. package/cpa-out/react-loader-ts/src/index.tsx +19 -0
  128. package/cpa-out/react-loader-ts/src/react-app-env.d.ts +1 -0
  129. package/cpa-out/react-loader-ts/src/reportWebVitals.ts +15 -0
  130. package/cpa-out/react-loader-ts/src/setupTests.ts +5 -0
  131. package/cpa-out/react-loader-ts/tsconfig.json +26 -0
  132. package/dist/gatsby/gatsby.d.ts +6 -0
  133. package/dist/{strategies → gatsby}/gatsby.js +26 -29
  134. package/dist/gatsby/template.d.ts +11 -0
  135. package/dist/{templates/gatsby.js → gatsby/template.js} +34 -42
  136. package/dist/index.d.ts +1 -1
  137. package/dist/index.js +57 -27
  138. package/dist/lib.d.ts +3 -4
  139. package/dist/lib.js +22 -12
  140. package/dist/nextjs/nextjs.d.ts +2 -0
  141. package/dist/nextjs/nextjs.js +155 -0
  142. package/dist/nextjs/templates/app-loader/catchall-page.d.ts +2 -0
  143. package/dist/nextjs/templates/app-loader/catchall-page.js +67 -0
  144. package/dist/nextjs/templates/app-loader/plasmic-host.d.ts +1 -0
  145. package/dist/nextjs/templates/app-loader/plasmic-host.js +13 -0
  146. package/dist/nextjs/templates/app-loader/plasmic-init-client.d.ts +2 -0
  147. package/dist/nextjs/templates/app-loader/plasmic-init-client.js +73 -0
  148. package/dist/nextjs/templates/app-loader/plasmic-init.d.ts +1 -0
  149. package/dist/nextjs/templates/app-loader/plasmic-init.js +23 -0
  150. package/dist/nextjs/templates/pages-codegen/app.d.ts +2 -0
  151. package/dist/nextjs/templates/pages-codegen/app.js +20 -0
  152. package/dist/nextjs/templates/pages-codegen/plasmic-host.d.ts +1 -0
  153. package/dist/nextjs/templates/pages-codegen/plasmic-host.js +22 -0
  154. package/dist/nextjs/templates/pages-loader/catchall-page.d.ts +2 -0
  155. package/dist/nextjs/templates/pages-loader/catchall-page.js +77 -0
  156. package/dist/nextjs/templates/pages-loader/plasmic-host.d.ts +1 -0
  157. package/dist/nextjs/templates/pages-loader/plasmic-host.js +14 -0
  158. package/dist/nextjs/templates/pages-loader/plasmic-init.d.ts +1 -0
  159. package/dist/nextjs/templates/pages-loader/plasmic-init.js +32 -0
  160. package/dist/react/react.d.ts +2 -0
  161. package/dist/{strategies → react}/react.js +10 -10
  162. package/dist/templates/readme.d.ts +2 -2
  163. package/dist/templates/readme.js +5 -4
  164. package/dist/templates/welcomePage.d.ts +2 -2
  165. package/dist/templates/welcomePage.js +5 -5
  166. package/dist/{strategies/common.d.ts → utils/codegen.d.ts} +0 -0
  167. package/dist/{strategies/common.js → utils/codegen.js} +0 -0
  168. package/dist/utils/file-utils.d.ts +2 -2
  169. package/dist/utils/file-utils.js +3 -3
  170. package/dist/{strategies/types.d.ts → utils/strategy.d.ts} +16 -14
  171. package/dist/{strategies/types.js → utils/strategy.js} +0 -0
  172. package/dist/utils/types.d.ts +9 -0
  173. package/dist/utils/types.js +7 -0
  174. package/package.json +4 -3
  175. package/run-cpa.ts +151 -0
  176. package/src/{strategies → gatsby}/gatsby.ts +28 -46
  177. package/src/{templates/gatsby.ts → gatsby/template.ts} +41 -51
  178. package/src/index.ts +86 -56
  179. package/src/lib.ts +30 -15
  180. package/src/nextjs/nextjs.ts +180 -0
  181. package/src/nextjs/templates/app-loader/catchall-page.ts +71 -0
  182. package/src/nextjs/templates/app-loader/plasmic-host.ts +9 -0
  183. package/src/nextjs/templates/app-loader/plasmic-init-client.ts +74 -0
  184. package/src/nextjs/templates/app-loader/plasmic-init.ts +22 -0
  185. package/src/nextjs/templates/pages-codegen/app.ts +24 -0
  186. package/src/nextjs/templates/pages-codegen/plasmic-host.ts +18 -0
  187. package/src/nextjs/templates/pages-loader/catchall-page.ts +81 -0
  188. package/src/nextjs/templates/pages-loader/plasmic-host.ts +10 -0
  189. package/src/nextjs/templates/pages-loader/plasmic-init.ts +31 -0
  190. package/src/{strategies → react}/react.ts +8 -10
  191. package/src/templates/readme.ts +5 -5
  192. package/src/templates/welcomePage.ts +6 -7
  193. package/src/{strategies/common.ts → utils/codegen.ts} +0 -0
  194. package/src/utils/file-utils.ts +4 -4
  195. package/src/utils/strategy.ts +48 -0
  196. package/src/utils/types.ts +12 -0
  197. package/dist/strategies/gatsby.d.ts +0 -7
  198. package/dist/strategies/index.d.ts +0 -2
  199. package/dist/strategies/index.js +0 -22
  200. package/dist/strategies/nextjs.d.ts +0 -3
  201. package/dist/strategies/nextjs.js +0 -104
  202. package/dist/strategies/react.d.ts +0 -3
  203. package/dist/templates/gatsby.d.ts +0 -11
  204. package/dist/templates/nextjs.d.ts +0 -5
  205. package/dist/templates/nextjs.js +0 -162
  206. package/src/strategies/index.ts +0 -21
  207. package/src/strategies/nextjs.ts +0 -131
  208. package/src/strategies/types.ts +0 -42
  209. package/src/templates/nextjs.ts +0 -170
@@ -0,0 +1,76 @@
1
+ {
2
+ "platform": "react",
3
+ "code": {
4
+ "lang": "ts",
5
+ "scheme": "blackbox",
6
+ "reactRuntime": "classic"
7
+ },
8
+ "style": {
9
+ "scheme": "css-modules",
10
+ "defaultStyleCssFilePath": "plasmic/plasmic__default_style.css"
11
+ },
12
+ "images": {
13
+ "scheme": "files",
14
+ "publicDir": "../../public",
15
+ "publicUrlPrefix": "/static/"
16
+ },
17
+ "tokens": {
18
+ "scheme": "theo",
19
+ "tokensFilePath": "plasmic-tokens.theo.json"
20
+ },
21
+ "srcDir": "src/components",
22
+ "defaultPlasmicDir": "./plasmic",
23
+ "projects": [
24
+ {
25
+ "projectId": "47tFXWjN2C4NyHFGGpaYQ3",
26
+ "projectApiToken": "7BRFratDxPLMGZHnd2grV5QP6mlHcZ1AK3BJSIeh7xzUlHgWh25XpgXvUaKAqHXFMXQQuzpADqboibF6nqNWQ",
27
+ "projectName": "create-plasmic-app",
28
+ "version": "latest",
29
+ "cssFilePath": "plasmic/create_plasmic_app/plasmic_create_plasmic_app.module.css",
30
+ "components": [
31
+ {
32
+ "id": "6uuAAE1jiCew",
33
+ "name": "Homepage",
34
+ "type": "managed",
35
+ "projectId": "47tFXWjN2C4NyHFGGpaYQ3",
36
+ "renderModuleFilePath": "plasmic/create_plasmic_app/PlasmicHomepage.tsx",
37
+ "importSpec": {
38
+ "modulePath": "Homepage.tsx"
39
+ },
40
+ "cssFilePath": "plasmic/create_plasmic_app/PlasmicHomepage.module.css",
41
+ "scheme": "blackbox",
42
+ "componentType": "page"
43
+ }
44
+ ],
45
+ "icons": [],
46
+ "images": [],
47
+ "indirect": false,
48
+ "globalContextsFilePath": "",
49
+ "codeComponents": [
50
+ {
51
+ "id": "P6aGdYWZ2R",
52
+ "name": "PlasmicHead",
53
+ "componentImportPath": "@plasmicapp/react-web"
54
+ },
55
+ {
56
+ "id": "8G2A-uTjGa",
57
+ "name": "Fetcher",
58
+ "componentImportPath": "@plasmicapp/react-web/lib/data-sources"
59
+ }
60
+ ]
61
+ }
62
+ ],
63
+ "globalVariants": {
64
+ "variantGroups": [
65
+ {
66
+ "id": "SCBjPXGDXDZBV",
67
+ "name": "Screen",
68
+ "projectId": "47tFXWjN2C4NyHFGGpaYQ3",
69
+ "contextFilePath": "plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.tsx"
70
+ }
71
+ ]
72
+ },
73
+ "wrapPagesWithGlobalContexts": true,
74
+ "cliVersion": "0.1.205",
75
+ "$schema": "https://unpkg.com/@plasmicapp/cli@0.1.205/dist/plasmic.schema.json"
76
+ }
@@ -0,0 +1,9 @@
1
+
2
+ import Homepage from './components/Homepage';
3
+
4
+ function App() {
5
+ return (<Homepage />);
6
+ }
7
+
8
+ export default App;
9
+
@@ -0,0 +1,45 @@
1
+ // This is a skeleton starter React component generated by Plasmic.
2
+ // This file is owned by you, feel free to edit as you see fit.
3
+ import * as React from "react";
4
+ import {
5
+ PlasmicHomepage,
6
+ DefaultHomepageProps
7
+ } from "./plasmic/create_plasmic_app/PlasmicHomepage";
8
+ import { HTMLElementRefOf } from "@plasmicapp/react-web";
9
+
10
+ // Your component props start with props for variants and slots you defined
11
+ // in Plasmic, but you can add more here, like event handlers that you can
12
+ // attach to named nodes in your component.
13
+ //
14
+ // If you don't want to expose certain variants or slots as a prop, you can use
15
+ // Omit to hide them:
16
+ //
17
+ // interface HomepageProps extends Omit<DefaultHomepageProps, "hideProps1"|"hideProp2"> {
18
+ // // etc.
19
+ // }
20
+ //
21
+ // You can also stop extending from DefaultHomepageProps altogether and have
22
+ // total control over the props for your component.
23
+ export interface HomepageProps extends DefaultHomepageProps {}
24
+
25
+ function Homepage_(props: HomepageProps, ref: HTMLElementRefOf<"div">) {
26
+ // Use PlasmicHomepage to render this component as it was
27
+ // designed in Plasmic, by activating the appropriate variants,
28
+ // attaching the appropriate event handlers, etc. You
29
+ // can also install whatever React hooks you need here to manage state or
30
+ // fetch data.
31
+ //
32
+ // Props you can pass into PlasmicHomepage are:
33
+ // 1. Variants you want to activate,
34
+ // 2. Contents for slots you want to fill,
35
+ // 3. Overrides for any named node in the component to attach behavior and data,
36
+ // 4. Props to set on the root node.
37
+ //
38
+ // By default, we are just piping all HomepageProps here, but feel free
39
+ // to do whatever works for you.
40
+
41
+ return <PlasmicHomepage root={{ ref }} {...props} />;
42
+ }
43
+
44
+ const Homepage = React.forwardRef(Homepage_);
45
+ export default Homepage;
@@ -0,0 +1,30 @@
1
+ // @ts-nocheck
2
+ /* eslint-disable */
3
+ /* tslint:disable */
4
+ /* prettier-ignore-start */
5
+ import * as React from "react";
6
+ import * as p from "@plasmicapp/react-web";
7
+
8
+ export type ScreenValue = "desktopOnly";
9
+ export const ScreenContext = React.createContext<ScreenValue[] | undefined>(
10
+ "PLEASE_RENDER_INSIDE_PROVIDER" as any
11
+ );
12
+
13
+ /**
14
+ * @deprecated Plasmic now uses a custom hook for Screen variants, which is
15
+ * automatically included in your components. Please remove this provider
16
+ * from your code.
17
+ */
18
+ export function ScreenVariantProvider(props: React.PropsWithChildren) {
19
+ console.warn(
20
+ "DEPRECATED: Plasmic now uses a custom hook for Screen variants, which is automatically included in your components. Please remove this provider from your code."
21
+ );
22
+ return props.children;
23
+ }
24
+
25
+ export const useScreenVariants = p.createUseScreenVariants(true, {
26
+ desktopOnly: "(min-width:768px)",
27
+ });
28
+
29
+ export default ScreenContext;
30
+ /* prettier-ignore-end */
@@ -0,0 +1,280 @@
1
+ // @ts-nocheck
2
+ /* eslint-disable */
3
+ /* tslint:disable */
4
+ /* prettier-ignore-start */
5
+
6
+ /** @jsxRuntime classic */
7
+ /** @jsx createPlasmicElementProxy */
8
+ /** @jsxFrag React.Fragment */
9
+
10
+ // This class is auto-generated by Plasmic; please do not edit!
11
+ // Plasmic Project: 47tFXWjN2C4NyHFGGpaYQ3
12
+ // Component: 6uuAAE1jiCew
13
+ import * as React from "react";
14
+
15
+ import * as p from "@plasmicapp/react-web";
16
+ import * as ph from "@plasmicapp/host";
17
+
18
+ import {
19
+ hasVariant,
20
+ classNames,
21
+ wrapWithClassName,
22
+ createPlasmicElementProxy,
23
+ makeFragment,
24
+ MultiChoiceArg,
25
+ SingleBooleanChoiceArg,
26
+ SingleChoiceArg,
27
+ pick,
28
+ omit,
29
+ useTrigger,
30
+ StrictProps,
31
+ deriveRenderOpts,
32
+ ensureGlobalVariants
33
+ } from "@plasmicapp/react-web";
34
+
35
+ import { useScreenVariants as useScreenVariantsscBjPxgdxdzbv } from "./PlasmicGlobalVariant__Screen"; // plasmic-import: SCBjPXGDXDZBV/globalVariant
36
+
37
+ import "@plasmicapp/react-web/lib/plasmic.css";
38
+
39
+ import projectcss from "./plasmic_create_plasmic_app.module.css"; // plasmic-import: 47tFXWjN2C4NyHFGGpaYQ3/projectcss
40
+ import sty from "./PlasmicHomepage.module.css"; // plasmic-import: 6uuAAE1jiCew/css
41
+
42
+ export type PlasmicHomepage__VariantMembers = {};
43
+ export type PlasmicHomepage__VariantsArgs = {};
44
+ type VariantPropType = keyof PlasmicHomepage__VariantsArgs;
45
+ export const PlasmicHomepage__VariantProps = new Array<VariantPropType>();
46
+
47
+ export type PlasmicHomepage__ArgsType = {};
48
+ type ArgPropType = keyof PlasmicHomepage__ArgsType;
49
+ export const PlasmicHomepage__ArgProps = new Array<ArgPropType>();
50
+
51
+ export type PlasmicHomepage__OverridesType = {
52
+ root?: p.Flex<"div">;
53
+ section?: p.Flex<"section">;
54
+ h1?: p.Flex<"h1">;
55
+ text?: p.Flex<"div">;
56
+ };
57
+
58
+ export interface DefaultHomepageProps {
59
+ className?: string;
60
+ }
61
+
62
+ const __wrapUserFunction =
63
+ globalThis.__PlasmicWrapUserFunction ?? ((loc, fn) => fn());
64
+ const __wrapUserPromise =
65
+ globalThis.__PlasmicWrapUserPromise ??
66
+ (async (loc, promise) => {
67
+ return await promise;
68
+ });
69
+
70
+ function PlasmicHomepage__RenderFunc(props: {
71
+ variants: PlasmicHomepage__VariantsArgs;
72
+ args: PlasmicHomepage__ArgsType;
73
+ overrides: PlasmicHomepage__OverridesType;
74
+
75
+ forNode?: string;
76
+ }) {
77
+ const { variants, overrides, forNode } = props;
78
+
79
+ const $ctx = ph.useDataEnv?.() || {};
80
+ const args = React.useMemo(() => Object.assign({}, props.args), [props.args]);
81
+
82
+ const $props = {
83
+ ...args,
84
+ ...variants
85
+ };
86
+
87
+ const currentUser = p.useCurrentUser?.() || {};
88
+
89
+ const [$queries, setDollarQueries] = React.useState({});
90
+
91
+ const globalVariants = ensureGlobalVariants({
92
+ screen: useScreenVariantsscBjPxgdxdzbv()
93
+ });
94
+
95
+ return (
96
+ <React.Fragment>
97
+ {}
98
+
99
+ <div className={projectcss.plasmic_page_wrapper}>
100
+ <div
101
+ data-plasmic-name={"root"}
102
+ data-plasmic-override={overrides.root}
103
+ data-plasmic-root={true}
104
+ data-plasmic-for-node={forNode}
105
+ className={classNames(
106
+ projectcss.all,
107
+ projectcss.root_reset,
108
+ projectcss.plasmic_default_styles,
109
+ projectcss.plasmic_mixins,
110
+ sty.root
111
+ )}
112
+ >
113
+ <p.Stack
114
+ as={"section"}
115
+ data-plasmic-name={"section"}
116
+ data-plasmic-override={overrides.section}
117
+ hasGap={true}
118
+ className={classNames(projectcss.all, sty.section)}
119
+ >
120
+ <h1
121
+ data-plasmic-name={"h1"}
122
+ data-plasmic-override={overrides.h1}
123
+ className={classNames(
124
+ projectcss.all,
125
+ projectcss.h1,
126
+ projectcss.__wab_text,
127
+ sty.h1
128
+ )}
129
+ >
130
+ {"create-plasmic-app"}
131
+ </h1>
132
+
133
+ <div
134
+ data-plasmic-name={"text"}
135
+ data-plasmic-override={overrides.text}
136
+ className={classNames(
137
+ projectcss.all,
138
+ projectcss.__wab_text,
139
+ sty.text
140
+ )}
141
+ >
142
+ {hasVariant(globalVariants, "screen", "desktopOnly") ? (
143
+ <React.Fragment>
144
+ <React.Fragment>
145
+ {
146
+ "This project is used by run-cpa.ts in the create-plasmic-app repo.\n\nrun-cpa.ts runs create-plasmic-app for many combinations of args (e.g. nextjs + appDir + loader + typescript) to check for changes in generated files. Any changes to this project will result in lots of changes to the generated files. "
147
+ }
148
+ </React.Fragment>
149
+ <span
150
+ className={"plasmic_default__all plasmic_default__span"}
151
+ style={{ fontWeight: 700 }}
152
+ >
153
+ {"Therefore, please avoid changing this project."}
154
+ </span>
155
+ </React.Fragment>
156
+ ) : (
157
+ <React.Fragment>
158
+ <React.Fragment>
159
+ {
160
+ "If you haven't already done so, go back and learn the basics by going through the Plasmic Levels tutorial.\n\nIt's always easier to start from examples! Add a new page using a template—do this from the list of pages in the top left (the gray + button).\n\nOr press the big blue + button to start dragging items into this page.\n\nIntegrate this project into your codebase—press the "
161
+ }
162
+ </React.Fragment>
163
+ <span
164
+ className={"plasmic_default__all plasmic_default__span"}
165
+ style={{ fontWeight: 700 }}
166
+ >
167
+ {"Code"}
168
+ </span>
169
+ <React.Fragment>
170
+ {
171
+ " button in the top right and follow the quickstart instructions.\n\nJoin our Slack community (icon in bottom left) for help any time."
172
+ }
173
+ </React.Fragment>
174
+ </React.Fragment>
175
+ )}
176
+ </div>
177
+ </p.Stack>
178
+ </div>
179
+ </div>
180
+ </React.Fragment>
181
+ ) as React.ReactElement | null;
182
+ }
183
+
184
+ const PlasmicDescendants = {
185
+ root: ["root", "section", "h1", "text"],
186
+ section: ["section", "h1", "text"],
187
+ h1: ["h1"],
188
+ text: ["text"]
189
+ } as const;
190
+ type NodeNameType = keyof typeof PlasmicDescendants;
191
+ type DescendantsType<T extends NodeNameType> =
192
+ (typeof PlasmicDescendants)[T][number];
193
+ type NodeDefaultElementType = {
194
+ root: "div";
195
+ section: "section";
196
+ h1: "h1";
197
+ text: "div";
198
+ };
199
+
200
+ type ReservedPropsType = "variants" | "args" | "overrides";
201
+ type NodeOverridesType<T extends NodeNameType> = Pick<
202
+ PlasmicHomepage__OverridesType,
203
+ DescendantsType<T>
204
+ >;
205
+ type NodeComponentProps<T extends NodeNameType> =
206
+ // Explicitly specify variants, args, and overrides as objects
207
+ {
208
+ variants?: PlasmicHomepage__VariantsArgs;
209
+ args?: PlasmicHomepage__ArgsType;
210
+ overrides?: NodeOverridesType<T>;
211
+ } & Omit<PlasmicHomepage__VariantsArgs, ReservedPropsType> & // Specify variants directly as props
212
+ /* Specify args directly as props*/ Omit<
213
+ PlasmicHomepage__ArgsType,
214
+ ReservedPropsType
215
+ > &
216
+ /* Specify overrides for each element directly as props*/ Omit<
217
+ NodeOverridesType<T>,
218
+ ReservedPropsType | VariantPropType | ArgPropType
219
+ > &
220
+ /* Specify props for the root element*/ Omit<
221
+ Partial<React.ComponentProps<NodeDefaultElementType[T]>>,
222
+ ReservedPropsType | VariantPropType | ArgPropType | DescendantsType<T>
223
+ >;
224
+
225
+ function makeNodeComponent<NodeName extends NodeNameType>(nodeName: NodeName) {
226
+ type PropsType = NodeComponentProps<NodeName> & { key?: React.Key };
227
+ const func = function <T extends PropsType>(
228
+ props: T & StrictProps<T, PropsType>
229
+ ) {
230
+ const { variants, args, overrides } = React.useMemo(
231
+ () =>
232
+ deriveRenderOpts(props, {
233
+ name: nodeName,
234
+ descendantNames: [...PlasmicDescendants[nodeName]],
235
+ internalArgPropNames: PlasmicHomepage__ArgProps,
236
+ internalVariantPropNames: PlasmicHomepage__VariantProps
237
+ }),
238
+ [props, nodeName]
239
+ );
240
+
241
+ return PlasmicHomepage__RenderFunc({
242
+ variants,
243
+ args,
244
+ overrides,
245
+ forNode: nodeName
246
+ });
247
+ };
248
+ if (nodeName === "root") {
249
+ func.displayName = "PlasmicHomepage";
250
+ } else {
251
+ func.displayName = `PlasmicHomepage.${nodeName}`;
252
+ }
253
+ return func;
254
+ }
255
+
256
+ export const PlasmicHomepage = Object.assign(
257
+ // Top-level PlasmicHomepage renders the root element
258
+ makeNodeComponent("root"),
259
+ {
260
+ // Helper components rendering sub-elements
261
+ section: makeNodeComponent("section"),
262
+ h1: makeNodeComponent("h1"),
263
+ text: makeNodeComponent("text"),
264
+
265
+ // Metadata about props expected for PlasmicHomepage
266
+ internalVariantProps: PlasmicHomepage__VariantProps,
267
+ internalArgProps: PlasmicHomepage__ArgProps,
268
+
269
+ // Page metadata
270
+ pageMetadata: {
271
+ title: "",
272
+ description: "",
273
+ ogImageSrc: "",
274
+ canonical: ""
275
+ }
276
+ }
277
+ );
278
+
279
+ export default PlasmicHomepage;
280
+ /* prettier-ignore-end */
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import ReactDOM from 'react-dom/client';
3
+ import './index.css';
4
+ import App from './App';
5
+ import reportWebVitals from './reportWebVitals';
6
+
7
+ const root = ReactDOM.createRoot(
8
+ document.getElementById('root') as HTMLElement
9
+ );
10
+ root.render(
11
+
12
+ <App />
13
+
14
+ );
15
+
16
+ // If you want to start measuring performance in your app, pass a function
17
+ // to log results (for example: reportWebVitals(console.log))
18
+ // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
19
+ reportWebVitals();
@@ -0,0 +1 @@
1
+ /// <reference types="react-scripts" />
@@ -0,0 +1,15 @@
1
+ import { ReportHandler } from 'web-vitals';
2
+
3
+ const reportWebVitals = (onPerfEntry?: ReportHandler) => {
4
+ if (onPerfEntry && onPerfEntry instanceof Function) {
5
+ import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
6
+ getCLS(onPerfEntry);
7
+ getFID(onPerfEntry);
8
+ getFCP(onPerfEntry);
9
+ getLCP(onPerfEntry);
10
+ getTTFB(onPerfEntry);
11
+ });
12
+ }
13
+ };
14
+
15
+ export default reportWebVitals;
@@ -0,0 +1,5 @@
1
+ // jest-dom adds custom jest matchers for asserting on DOM nodes.
2
+ // allows you to do things like:
3
+ // expect(element).toHaveTextContent(/react/i)
4
+ // learn more: https://github.com/testing-library/jest-dom
5
+ import '@testing-library/jest-dom';
@@ -0,0 +1,26 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es5",
4
+ "lib": [
5
+ "dom",
6
+ "dom.iterable",
7
+ "esnext"
8
+ ],
9
+ "allowJs": true,
10
+ "skipLibCheck": true,
11
+ "esModuleInterop": true,
12
+ "allowSyntheticDefaultImports": true,
13
+ "strict": true,
14
+ "forceConsistentCasingInFileNames": true,
15
+ "noFallthroughCasesInSwitch": true,
16
+ "module": "esnext",
17
+ "moduleResolution": "node",
18
+ "resolveJsonModule": true,
19
+ "isolatedModules": true,
20
+ "noEmit": true,
21
+ "jsx": "react-jsx"
22
+ },
23
+ "include": [
24
+ "src"
25
+ ]
26
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "react-loader-js",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "dependencies": {
6
+ "@plasmicapp/cli": "^0.1.205",
7
+ "@plasmicapp/host": "^1.0.100",
8
+ "@plasmicapp/react-web": "^0.2.150",
9
+ "@testing-library/jest-dom": "^5.14.1",
10
+ "@testing-library/react": "^13.0.0",
11
+ "@testing-library/user-event": "^13.2.1",
12
+ "react": "^18.2.0",
13
+ "react-dom": "^18.2.0",
14
+ "react-scripts": "5.0.1",
15
+ "web-vitals": "^2.1.0"
16
+ },
17
+ "scripts": {
18
+ "start": "react-scripts start",
19
+ "build": "react-scripts build",
20
+ "test": "react-scripts test",
21
+ "eject": "react-scripts eject"
22
+ },
23
+ "eslintConfig": {
24
+ "extends": [
25
+ "react-app",
26
+ "react-app/jest"
27
+ ]
28
+ },
29
+ "browserslist": {
30
+ "production": [
31
+ ">0.2%",
32
+ "not dead",
33
+ "not op_mini all"
34
+ ],
35
+ "development": [
36
+ "last 1 chrome version",
37
+ "last 1 firefox version",
38
+ "last 1 safari version"
39
+ ]
40
+ }
41
+ }
@@ -0,0 +1,76 @@
1
+ {
2
+ "platform": "react",
3
+ "code": {
4
+ "lang": "js",
5
+ "scheme": "blackbox",
6
+ "reactRuntime": "classic"
7
+ },
8
+ "style": {
9
+ "scheme": "css-modules",
10
+ "defaultStyleCssFilePath": "plasmic/plasmic__default_style.css"
11
+ },
12
+ "images": {
13
+ "scheme": "files",
14
+ "publicDir": "../../public",
15
+ "publicUrlPrefix": "/static/"
16
+ },
17
+ "tokens": {
18
+ "scheme": "theo",
19
+ "tokensFilePath": "plasmic-tokens.theo.json"
20
+ },
21
+ "srcDir": "src/components",
22
+ "defaultPlasmicDir": "./plasmic",
23
+ "projects": [
24
+ {
25
+ "projectId": "47tFXWjN2C4NyHFGGpaYQ3",
26
+ "projectApiToken": "7BRFratDxPLMGZHnd2grV5QP6mlHcZ1AK3BJSIeh7xzUlHgWh25XpgXvUaKAqHXFMXQQuzpADqboibF6nqNWQ",
27
+ "projectName": "create-plasmic-app",
28
+ "version": "latest",
29
+ "cssFilePath": "plasmic/create_plasmic_app/plasmic_create_plasmic_app.module.css",
30
+ "components": [
31
+ {
32
+ "id": "6uuAAE1jiCew",
33
+ "name": "Homepage",
34
+ "type": "managed",
35
+ "projectId": "47tFXWjN2C4NyHFGGpaYQ3",
36
+ "renderModuleFilePath": "plasmic/create_plasmic_app/PlasmicHomepage.jsx",
37
+ "importSpec": {
38
+ "modulePath": "Homepage.jsx"
39
+ },
40
+ "cssFilePath": "plasmic/create_plasmic_app/PlasmicHomepage.module.css",
41
+ "scheme": "blackbox",
42
+ "componentType": "page"
43
+ }
44
+ ],
45
+ "icons": [],
46
+ "images": [],
47
+ "indirect": false,
48
+ "globalContextsFilePath": "",
49
+ "codeComponents": [
50
+ {
51
+ "id": "P6aGdYWZ2R",
52
+ "name": "PlasmicHead",
53
+ "componentImportPath": "@plasmicapp/react-web"
54
+ },
55
+ {
56
+ "id": "8G2A-uTjGa",
57
+ "name": "Fetcher",
58
+ "componentImportPath": "@plasmicapp/react-web/lib/data-sources"
59
+ }
60
+ ]
61
+ }
62
+ ],
63
+ "globalVariants": {
64
+ "variantGroups": [
65
+ {
66
+ "id": "SCBjPXGDXDZBV",
67
+ "name": "Screen",
68
+ "projectId": "47tFXWjN2C4NyHFGGpaYQ3",
69
+ "contextFilePath": "plasmic/create_plasmic_app/PlasmicGlobalVariant__Screen.jsx"
70
+ }
71
+ ]
72
+ },
73
+ "wrapPagesWithGlobalContexts": true,
74
+ "cliVersion": "0.1.205",
75
+ "$schema": "https://unpkg.com/@plasmicapp/cli@0.1.205/dist/plasmic.schema.json"
76
+ }
@@ -0,0 +1,9 @@
1
+
2
+ import Homepage from './components/Homepage';
3
+
4
+ function App() {
5
+ return (<Homepage />);
6
+ }
7
+
8
+ export default App;
9
+
@@ -0,0 +1,26 @@
1
+ // This is a skeleton starter React component generated by Plasmic.
2
+ // This file is owned by you, feel free to edit as you see fit.
3
+ import * as React from "react";
4
+ import { PlasmicHomepage } from "./plasmic/create_plasmic_app/PlasmicHomepage";
5
+
6
+ function Homepage_(props, ref) {
7
+ // Use PlasmicHomepage to render this component as it was
8
+ // designed in Plasmic, by activating the appropriate variants,
9
+ // attaching the appropriate event handlers, etc. You
10
+ // can also install whatever React hooks you need here to manage state or
11
+ // fetch data.
12
+ //
13
+ // Props you can pass into PlasmicHomepage are:
14
+ // 1. Variants you want to activate,
15
+ // 2. Contents for slots you want to fill,
16
+ // 3. Overrides for any named node in the component to attach behavior and data,
17
+ // 4. Props to set on the root node.
18
+ //
19
+ // By default, we are just piping all HomepageProps here, but feel free
20
+ // to do whatever works for you.
21
+ return <PlasmicHomepage root={{ ref }} {...props} />;
22
+ }
23
+
24
+ const Homepage = React.forwardRef(Homepage_);
25
+
26
+ export default Homepage;