cayo 0.9.0

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 (83) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +6 -0
  3. package/cayo.js +295 -0
  4. package/jsconfig.json.txt +34 -0
  5. package/lib/cli.js +69 -0
  6. package/lib/codegen.js +77 -0
  7. package/lib/components/Cayo.svelte +24 -0
  8. package/lib/config.js +155 -0
  9. package/lib/files.js +84 -0
  10. package/lib/prerender.js +181 -0
  11. package/lib/renderer.js +45 -0
  12. package/lib/runtime.js +6 -0
  13. package/lib/utils.js +120 -0
  14. package/lib/vite.config.js +16 -0
  15. package/notes.md +3 -0
  16. package/package.json +39 -0
  17. package/test/cayo.config.js +35 -0
  18. package/test/public/assets/cow.js +1 -0
  19. package/test/public/images/app-icon.png +0 -0
  20. package/test/src/__layout.svelte +20 -0
  21. package/test/src/components/Cool.cayo.svelte +4 -0
  22. package/test/src/components/Some.svelte +1 -0
  23. package/test/src/index.js +5 -0
  24. package/test/src/main2.js +1 -0
  25. package/test/src/pages/hey.svelte +8 -0
  26. package/test/src/pages/howdy.svelte +11 -0
  27. package/test/src/pages/index.svelte +33 -0
  28. package/test/src/pages/some/page.svelte +2 -0
  29. package/tests/asset-dir/cayo.config.js +38 -0
  30. package/tests/asset-dir/package-lock.json +1435 -0
  31. package/tests/asset-dir/package.json +19 -0
  32. package/tests/asset-dir/public/images/app-icon.png +0 -0
  33. package/tests/asset-dir/src/__layout.svelte +20 -0
  34. package/tests/asset-dir/src/components/CayoExample.svelte +5 -0
  35. package/tests/asset-dir/src/components/Some.cayo.svelte +6 -0
  36. package/tests/asset-dir/src/index.js +5 -0
  37. package/tests/asset-dir/src/pages/index.svelte +19 -0
  38. package/tests/base-path/cayo.config.js +36 -0
  39. package/tests/base-path/package-lock.json +1435 -0
  40. package/tests/base-path/package.json +19 -0
  41. package/tests/base-path/public/assets/cow.js +1 -0
  42. package/tests/base-path/public/images/app-icon.png +0 -0
  43. package/tests/base-path/src/__layout.svelte +20 -0
  44. package/tests/base-path/src/components/CayoExample.svelte +5 -0
  45. package/tests/base-path/src/components/Some.cayo.svelte +6 -0
  46. package/tests/base-path/src/index.js +5 -0
  47. package/tests/base-path/src/pages/howdy.svelte +12 -0
  48. package/tests/base-path/src/pages/index.svelte +20 -0
  49. package/tests/basic/notcayo.config.js +35 -0
  50. package/tests/basic/package-lock.json +1435 -0
  51. package/tests/basic/package.json +19 -0
  52. package/tests/basic/public/assets/cow.js +1 -0
  53. package/tests/basic/public/images/app-icon.png +0 -0
  54. package/tests/basic/src/__layout.svelte +20 -0
  55. package/tests/basic/src/components/Cool.cayo.svelte +4 -0
  56. package/tests/basic/src/components/Some.svelte +1 -0
  57. package/tests/basic/src/index.js +5 -0
  58. package/tests/basic/src/main2.js +1 -0
  59. package/tests/basic/src/pages/hey.svelte +8 -0
  60. package/tests/basic/src/pages/howdy.svelte +11 -0
  61. package/tests/basic/src/pages/index.svelte +33 -0
  62. package/tests/basic/src/pages/some/some.svelte +2 -0
  63. package/tests/basic cases (old)/src/__index.svelte +18 -0
  64. package/tests/basic cases (old)/src/components/Cool.cayo.svelte +4 -0
  65. package/tests/basic cases (old)/src/components/Some.svelte +1 -0
  66. package/tests/basic cases (old)/src/components/dir/Cool.cayo.svelte +4 -0
  67. package/tests/basic cases (old)/src/main.js +1 -0
  68. package/tests/basic cases (old)/src/main2.js +1 -0
  69. package/tests/basic cases (old)/src/pages/hey.svelte +2 -0
  70. package/tests/basic cases (old)/src/pages/howdy.svelte +11 -0
  71. package/tests/basic cases (old)/src/pages/index.svelte +27 -0
  72. package/tests/nested-pages/cayo.config.js +35 -0
  73. package/tests/nested-pages/package-lock.json +1435 -0
  74. package/tests/nested-pages/package.json +19 -0
  75. package/tests/nested-pages/public/assets/cow.js +1 -0
  76. package/tests/nested-pages/public/images/app-icon.png +0 -0
  77. package/tests/nested-pages/src/__layout.svelte +20 -0
  78. package/tests/nested-pages/src/components/Cool.cayo.svelte +4 -0
  79. package/tests/nested-pages/src/index.js +5 -0
  80. package/tests/nested-pages/src/main2.js +1 -0
  81. package/tests/nested-pages/src/pages/index.svelte +18 -0
  82. package/tests/nested-pages/src/pages/some/other/page.svelte +7 -0
  83. package/tests/nested-pages/src/pages/some/page.svelte +6 -0
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "test-cayo",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "type": "module",
6
+ "directories": {
7
+ "test": "test"
8
+ },
9
+ "scripts": {
10
+ "test": "echo \"Error: no test specified\" && exit 1"
11
+ },
12
+ "author": "",
13
+ "license": "ISC",
14
+ "devDependencies": {
15
+ "@sveltejs/vite-plugin-svelte": "^1.0.0-next.31",
16
+ "svelte-preprocess": "^4.9.8",
17
+ "vite": "^2.6.14"
18
+ }
19
+ }
@@ -0,0 +1 @@
1
+ console.log("I'm main");
@@ -0,0 +1,20 @@
1
+ <!-- <!DOCTYPE html> -->
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" href="/favicon.ico" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ %cayo.title%
8
+ %cayo.css%
9
+ %cayo.head%
10
+ </head>
11
+ <body class="hey">
12
+ <!--
13
+ TODO: Show how to condtionally render any of these pieces based on dev vs. prod
14
+ E.g., I need to remove head from prod, but want it there in dev
15
+ -->
16
+ %cayo.body%
17
+ %cayo.script%
18
+ </body>
19
+
20
+ </html>
@@ -0,0 +1,5 @@
1
+ <script>
2
+ import Cayo from '../../node_modules/cayo/lib/components/Cayo.svelte';
3
+ </script>
4
+
5
+ <Cayo name="Some" text="I'm a rendered Cayo Component" />
@@ -0,0 +1,6 @@
1
+ <script>
2
+ export let message = '';
3
+ </script>
4
+
5
+ <p>{message}</p>
6
+ <slot/>
@@ -0,0 +1,5 @@
1
+ // console.log("I'm main");
2
+ import { default as renderComponents } from './cayo-runtime.js';
3
+ document.addEventListener('DOMContentLoaded', () => {
4
+ renderComponents();
5
+ });
@@ -0,0 +1,12 @@
1
+ <script>
2
+ import CayoExample from '../components/CayoExample.svelte';
3
+ </script>
4
+
5
+ <p>
6
+ howdy pardner.<br>
7
+ </p>
8
+ <CayoExample />
9
+
10
+ <slot name="entry">
11
+ <script src="/index.js" data-cayo-entry />
12
+ </slot>
@@ -0,0 +1,20 @@
1
+ <script context="module">
2
+ export const meta = {
3
+ title: 'Home',
4
+ };
5
+ </script>
6
+
7
+ I'm index howdy ok<br>
8
+ <a href="/howdy/">Howdy</a><br>
9
+
10
+ <img src="/images/app-icon.png?$staticlink$" alt="">
11
+
12
+ <slot name="entry">
13
+ <script src="/index.js" data-cayo-entry />
14
+ </slot>
15
+
16
+ <style>
17
+ img {
18
+ width: 50px;
19
+ }
20
+ </style>
@@ -0,0 +1,35 @@
1
+
2
+ // vite config example
3
+ import { defineConfig } from 'vite'
4
+ import { svelte } from '@sveltejs/vite-plugin-svelte'
5
+ import sveltePreprocess from 'svelte-preprocess'
6
+ // const viteConfig = defineConfig({
7
+ // // root: './.cayo/',
8
+ // plugins: [svelte({
9
+ // preprocess: sveltePreprocess({ preserve: ['json'] }),
10
+ // compilerOptions: {
11
+ // hydratable: true,
12
+ // },
13
+ // })],
14
+ // });
15
+
16
+ export default {
17
+ // projectRoot: '.',
18
+ // css: {
19
+ // internal: false,
20
+ // },
21
+ templateFileName: '__layout',
22
+ viteConfig: {
23
+ // base: '/vite/',
24
+ plugins: [svelte({
25
+ preprocess: sveltePreprocess({ preserve: ['json'] }),
26
+ compilerOptions: {
27
+ hydratable: true,
28
+ },
29
+ })],
30
+ server: {
31
+ // port: '5005',
32
+ },
33
+ },
34
+ // base: '/cayo/'
35
+ }