codeapp-js 0.1.1 → 0.2.1

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 (80) hide show
  1. package/codeApp/dist/codeapp.js +317 -74
  2. package/codeApp/dist/index.js +1 -1
  3. package/codeApp/dist/power-apps-data.js +2952 -2531
  4. package/dev files/customConnector.js +98 -0
  5. package/dev files/dataverse.js +22 -7
  6. package/dev files/environmentVar.js +1 -1
  7. package/dev files/office365groups.js +1 -1
  8. package/dev files/office365users.js +1 -1
  9. package/dev files/outlook.js +1 -1
  10. package/dev files/power-apps-data.js +2952 -0
  11. package/dev files/sharepoint.js +1 -1
  12. package/examples/combined demo/dist/codeapp.js +1098 -0
  13. package/examples/combined demo/dist/index.js +470 -515
  14. package/examples/combined demo/dist/power-apps-data.js +3007 -2531
  15. package/examples/dataverse Demo/dist/codeapp.js +1085 -0
  16. package/examples/dataverse Demo/dist/index.js +38 -26
  17. package/examples/dataverse Demo/dist/power-apps-data.js +2912 -2531
  18. package/examples/groups Demo/dist/codeapp.js +1085 -0
  19. package/examples/groups Demo/dist/index.js +113 -113
  20. package/examples/groups Demo/dist/power-apps-data.js +2912 -2531
  21. package/examples/kanban/dist/power-apps-data.js +2953 -2531
  22. package/examples/myProfile/dist/power-apps-data.js +2953 -2531
  23. package/examples/outlook Demo/dist/codeapp.js +1085 -0
  24. package/examples/outlook Demo/dist/index.js +39 -35
  25. package/examples/outlook Demo/dist/power-apps-data.js +2912 -2531
  26. package/examples/planning Poker/dist/power-apps-data.js +2953 -2531
  27. package/examples/sharePoint Demo/dist/codeapp.js +1085 -0
  28. package/examples/sharePoint Demo/dist/index.js +262 -269
  29. package/examples/sharePoint Demo/dist/power-apps-data.js +2912 -2531
  30. package/examples/solution explorer/agent/decision-log.md +27 -0
  31. package/examples/solution explorer/agent/mockup-01-swiss-grid.html +452 -0
  32. package/examples/solution explorer/agent/mockup-02-dark-glass.html +496 -0
  33. package/examples/solution explorer/agent/mockup-03-paper-console.html +510 -0
  34. package/examples/solution explorer/agent/mockup-04-neon-noir.html +546 -0
  35. package/examples/solution explorer/agent/mockup-05-zen-garden.html +534 -0
  36. package/examples/solution explorer/dist/codeapp.js +1098 -0
  37. package/examples/solution explorer/dist/icon-512.png +0 -0
  38. package/examples/solution explorer/dist/index.html +80 -0
  39. package/examples/solution explorer/dist/index.js +735 -0
  40. package/examples/solution explorer/dist/power-apps-data.js +3007 -0
  41. package/examples/solution explorer/dist/styles.css +571 -0
  42. package/examples/solution explorer/power.config.json +151 -0
  43. package/examples/todo/dist/power-apps-data.js +2953 -2531
  44. package/package.json +1 -8
  45. package/.github/instructions/wyattdave.instructions.md +0 -39
  46. package/docs-mockups/atelier/index.html +0 -120
  47. package/docs-mockups/atelier/script.js +0 -23
  48. package/docs-mockups/atelier/styles.css +0 -361
  49. package/docs-mockups/field-guide/index.html +0 -112
  50. package/docs-mockups/field-guide/script.js +0 -20
  51. package/docs-mockups/field-guide/styles.css +0 -272
  52. package/docs-mockups/index.html +0 -80
  53. package/docs-mockups/maker-hub/index.html +0 -178
  54. package/docs-mockups/maker-hub/script.js +0 -20
  55. package/docs-mockups/maker-hub/styles.css +0 -404
  56. package/docs-mockups/script.js +0 -26
  57. package/docs-mockups/signal/index.html +0 -146
  58. package/docs-mockups/signal/script.js +0 -20
  59. package/docs-mockups/signal/styles.css +0 -314
  60. package/docs-mockups/styles.css +0 -287
  61. package/examples/combined demo/dist/dataverse.js +0 -86
  62. package/examples/combined demo/dist/environmentVar.js +0 -55
  63. package/examples/combined demo/dist/office365groups.js +0 -97
  64. package/examples/combined demo/dist/office365users.js +0 -169
  65. package/examples/combined demo/dist/outlook.js +0 -162
  66. package/examples/combined demo/dist/sharepoint.js +0 -339
  67. package/examples/dataverse Demo/dist/dataverse.js +0 -86
  68. package/examples/groups Demo/dist/dataverse.js +0 -86
  69. package/examples/groups Demo/dist/environmentVar.js +0 -55
  70. package/examples/groups Demo/dist/office365groups.js +0 -97
  71. package/examples/groups Demo/dist/office365users.js +0 -169
  72. package/examples/groups Demo/dist/outlook.js +0 -162
  73. package/examples/groups Demo/dist/sharepoint.js +0 -339
  74. package/examples/sharePoint Demo/dist/dataverse.js +0 -94
  75. package/examples/sharePoint Demo/dist/environmentVar.js +0 -55
  76. package/examples/sharePoint Demo/dist/office365groups.js +0 -97
  77. package/examples/sharePoint Demo/dist/office365users.js +0 -169
  78. package/examples/sharePoint Demo/dist/outlook.js +0 -162
  79. package/examples/sharePoint Demo/dist/sharepoint.js +0 -339
  80. package/scripts/build-power-sdk.mjs +0 -69
@@ -1,272 +0,0 @@
1
- :root {
2
- --bg: #efe1c6;
3
- --paper: #f8f0dc;
4
- --paper-strong: #f3e4c0;
5
- --ink: #2a241b;
6
- --muted: #65594a;
7
- --forest: #425438;
8
- --rust: #b55c3b;
9
- --line: rgba(42, 36, 27, 0.14);
10
- --shadow: 0 18px 48px rgba(78, 58, 28, 0.16);
11
- }
12
-
13
- * {
14
- box-sizing: border-box;
15
- }
16
-
17
- html {
18
- scroll-behavior: smooth;
19
- }
20
-
21
- body {
22
- margin: 0;
23
- min-height: 100vh;
24
- background:
25
- radial-gradient(circle at 15% 10%, rgba(181, 92, 59, 0.16), transparent 22%),
26
- radial-gradient(circle at 85% 20%, rgba(66, 84, 56, 0.14), transparent 18%),
27
- linear-gradient(180deg, #f4e7cb, var(--bg));
28
- color: var(--ink);
29
- font-family: 'Outfit', sans-serif;
30
- }
31
-
32
- .poster {
33
- position: fixed;
34
- inset: 0;
35
- pointer-events: none;
36
- background-image:
37
- linear-gradient(rgba(42, 36, 27, 0.04) 1px, transparent 1px),
38
- linear-gradient(90deg, rgba(42, 36, 27, 0.04) 1px, transparent 1px);
39
- background-size: 36px 36px;
40
- opacity: 0.55;
41
- }
42
-
43
- .shell {
44
- position: relative;
45
- z-index: 1;
46
- width: min(1180px, calc(100% - 42px));
47
- margin: 0 auto;
48
- padding: 34px 0 52px;
49
- }
50
-
51
- .masthead {
52
- display: flex;
53
- justify-content: space-between;
54
- gap: 24px;
55
- align-items: end;
56
- }
57
-
58
- .kicker,
59
- .cardLabel {
60
- margin: 0;
61
- color: var(--rust);
62
- font-size: 0.82rem;
63
- font-weight: 800;
64
- letter-spacing: 0.16em;
65
- text-transform: uppercase;
66
- }
67
-
68
- .masthead h1,
69
- .featurePanel h2,
70
- .routePanel h2,
71
- .samplesPanel h3 {
72
- font-family: 'Literata', serif;
73
- }
74
-
75
- .masthead h1 {
76
- max-width: 720px;
77
- margin: 12px 0 0;
78
- font-size: clamp(3rem, 6vw, 5.2rem);
79
- line-height: 0.95;
80
- }
81
-
82
- .subcopy {
83
- max-width: 720px;
84
- margin: 16px 0 0;
85
- color: var(--muted);
86
- line-height: 1.8;
87
- }
88
-
89
- .returnLink {
90
- border: 1px solid var(--line);
91
- border-radius: 999px;
92
- padding: 12px 16px;
93
- background: rgba(248, 240, 220, 0.72);
94
- color: var(--ink);
95
- font-weight: 700;
96
- text-decoration: none;
97
- }
98
-
99
- .guideGrid {
100
- display: grid;
101
- grid-template-columns: 280px minmax(0, 1fr);
102
- gap: 22px;
103
- margin-top: 26px;
104
- }
105
-
106
- .mapColumn {
107
- display: grid;
108
- gap: 18px;
109
- align-content: start;
110
- }
111
-
112
- .noteCard,
113
- .routeCard,
114
- .featurePanel,
115
- .kitPanel,
116
- .samplesPanel {
117
- border: 1px solid var(--line);
118
- border-radius: 28px;
119
- background: linear-gradient(180deg, rgba(248, 240, 220, 0.95), rgba(243, 228, 192, 0.96));
120
- box-shadow: var(--shadow);
121
- }
122
-
123
- .noteCard,
124
- .routeCard,
125
- .featurePanel,
126
- .kitPanel,
127
- .samplesPanel {
128
- padding: 22px;
129
- }
130
-
131
- .noteCard p:last-child,
132
- .featurePanel p,
133
- .modeContent p,
134
- .sampleList p {
135
- color: var(--muted);
136
- line-height: 1.8;
137
- }
138
-
139
- .routeCard {
140
- display: grid;
141
- gap: 12px;
142
- }
143
-
144
- .routeCard a {
145
- color: var(--forest);
146
- font-weight: 700;
147
- text-decoration: none;
148
- }
149
-
150
- .contentColumn {
151
- display: grid;
152
- gap: 18px;
153
- }
154
-
155
- .featurePanel h2,
156
- .routePanel h2 {
157
- margin: 12px 0 0;
158
- font-size: clamp(2rem, 3.2vw, 3.3rem);
159
- line-height: 1.05;
160
- }
161
-
162
- .routePanel {
163
- display: grid;
164
- gap: 18px;
165
- }
166
-
167
- .routeSteps {
168
- display: grid;
169
- grid-template-columns: repeat(3, minmax(0, 1fr));
170
- gap: 14px;
171
- }
172
-
173
- .routeSteps div {
174
- padding: 18px;
175
- border: 1px dashed rgba(42, 36, 27, 0.22);
176
- border-radius: 20px;
177
- background: rgba(248, 240, 220, 0.6);
178
- }
179
-
180
- .routeSteps span {
181
- color: var(--forest);
182
- font-size: 1.4rem;
183
- font-weight: 800;
184
- }
185
-
186
- .kitHeader {
187
- display: flex;
188
- justify-content: space-between;
189
- gap: 16px;
190
- align-items: center;
191
- }
192
-
193
- .modeToggle {
194
- display: flex;
195
- gap: 8px;
196
- flex-wrap: wrap;
197
- }
198
-
199
- .modeButton {
200
- border: 1px solid var(--line);
201
- border-radius: 999px;
202
- padding: 10px 14px;
203
- background: transparent;
204
- color: var(--muted);
205
- font: inherit;
206
- cursor: pointer;
207
- }
208
-
209
- .modeButton.is-active {
210
- background: var(--forest);
211
- color: #f8f0dc;
212
- }
213
-
214
- .modeContent {
215
- display: none;
216
- margin-top: 16px;
217
- }
218
-
219
- .modeContent.is-active {
220
- display: block;
221
- }
222
-
223
- pre {
224
- overflow-x: auto;
225
- margin: 0;
226
- padding: 18px;
227
- border-radius: 18px;
228
- background: #292419;
229
- color: #f8f0dc;
230
- }
231
-
232
- code {
233
- font-family: 'Courier New', monospace;
234
- }
235
-
236
- .sampleList {
237
- display: grid;
238
- grid-template-columns: repeat(3, minmax(0, 1fr));
239
- gap: 14px;
240
- }
241
-
242
- .sampleList article {
243
- padding: 18px;
244
- border-radius: 20px;
245
- background: rgba(248, 240, 220, 0.7);
246
- border: 1px solid rgba(42, 36, 27, 0.1);
247
- }
248
-
249
- .sampleList h3 {
250
- margin: 0 0 10px;
251
- font-size: 1.35rem;
252
- }
253
-
254
- @media (max-width: 980px) {
255
- .guideGrid,
256
- .routeSteps,
257
- .sampleList {
258
- grid-template-columns: 1fr;
259
- }
260
- }
261
-
262
- @media (max-width: 760px) {
263
- .shell {
264
- width: min(100% - 24px, 1180px);
265
- }
266
-
267
- .masthead,
268
- .kitHeader {
269
- flex-direction: column;
270
- align-items: flex-start;
271
- }
272
- }
@@ -1,80 +0,0 @@
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
- <title>CodeApp JS Docs Mockups</title>
7
- <link rel="stylesheet" href="./styles.css">
8
- </head>
9
- <body>
10
- <div class="shell">
11
- <header class="topbar">
12
- <div class="brandBlock">
13
- <div class="suiteMark">P</div>
14
- <div>
15
- <p class="eyebrow">Power Platform-style Study</p>
16
- <h1>Two new docs mockups shaped like maker and model-driven experiences.</h1>
17
- </div>
18
- </div>
19
- <div class="topbarMeta">
20
- <span>codeapp-js</span>
21
- <span>Static prototype</span>
22
- </div>
23
- </header>
24
-
25
- <section class="heroPanel">
26
- <div>
27
- <p class="heroLead">The new direction drops the art-direction experiments and moves toward the visual language of make.powerapps.com and model-driven apps: light enterprise chrome, left rails, tabs, command bars, cards, forms, and data tables.</p>
28
- <div class="heroActions">
29
- <a class="primaryAction" href="./maker-hub/index.html">Open Maker Hub</a>
30
- <a class="secondaryAction" href="./model-workspace/index.html">Open Model Workspace</a>
31
- </div>
32
- </div>
33
- <div class="heroStats">
34
- <article>
35
- <strong>01</strong>
36
- <span>Maker portal docs hub</span>
37
- </article>
38
- <article>
39
- <strong>02</strong>
40
- <span>Model-driven reference workspace</span>
41
- </article>
42
- </div>
43
- </section>
44
-
45
- <main class="conceptGrid">
46
- <article class="conceptCard makerCard" data-index="1">
47
- <p class="conceptNumber">01</p>
48
- <h2>Maker Hub</h2>
49
- <p class="conceptTone">Inspired by make.powerapps.com</p>
50
- <p class="conceptBody">A docs home screen that feels like a maker portal: product chrome, command bar, learning cards, quick starts, and guided entry points into install, connectors, and examples.</p>
51
- <ul class="tags">
52
- <li>Portal shell</li>
53
- <li>Command bar</li>
54
- <li>Learning cards</li>
55
- </ul>
56
- <a href="./maker-hub/index.html">Preview concept</a>
57
- </article>
58
-
59
- <article class="conceptCard workspaceCard" data-index="2">
60
- <p class="conceptNumber">02</p>
61
- <h2>Model Workspace</h2>
62
- <p class="conceptTone">Inspired by model-driven apps</p>
63
- <p class="conceptBody">A dense reference layout that behaves like a model-driven work area with sitemap navigation, entity forms, related data grids, and tabbed detail panes for docs content.</p>
64
- <ul class="tags">
65
- <li>Sitemap</li>
66
- <li>Form canvas</li>
67
- <li>Grid + details</li>
68
- </ul>
69
- <a href="./model-workspace/index.html">Preview concept</a>
70
- </article>
71
- </main>
72
-
73
- <footer class="footerNote">
74
- <p>Keyboard shortcuts: press 1 for Maker Hub or 2 for Model Workspace.</p>
75
- </footer>
76
- </div>
77
-
78
- <script src="./script.js"></script>
79
- </body>
80
- </html>
@@ -1,178 +0,0 @@
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
- <title>Maker Hub | codeapp-js Docs</title>
7
- <link rel="stylesheet" href="./styles.css">
8
- </head>
9
- <body>
10
- <div class="appShell">
11
- <header class="suiteBar">
12
- <div class="suiteLeft">
13
- <button class="iconButton" aria-label="Open menu">☰</button>
14
- <div class="suiteBadge">P</div>
15
- <strong>Power Apps</strong>
16
- <span class="suiteDivider"></span>
17
- <span class="suiteLabel">codeapp-js documentation</span>
18
- </div>
19
- <div class="suiteRight">
20
- <input class="searchBox" type="search" placeholder="Search docs, connectors, examples">
21
- <button class="iconButton" aria-label="Notifications">⎋</button>
22
- <div class="avatar">CW</div>
23
- </div>
24
- </header>
25
-
26
- <div class="workspace">
27
- <aside class="leftRail">
28
- <p class="railLabel">Explore</p>
29
- <nav class="railNav">
30
- <a class="is-active" href="#home">Home</a>
31
- <a href="#quickstart">Quick start</a>
32
- <a href="#connectors">Connectors</a>
33
- <a href="#examples">Examples</a>
34
- <a href="#reference">Reference</a>
35
- </nav>
36
- <div class="railPanel">
37
- <p class="panelTitle">Environment</p>
38
- <p>Default workspace</p>
39
- <span>CLI ready</span>
40
- </div>
41
- </aside>
42
-
43
- <main class="contentArea">
44
- <section class="commandBar">
45
- <div class="commandSet">
46
- <button class="commandPrimary">Get started</button>
47
- <button class="commandButton">Install</button>
48
- <button class="commandButton">Configure</button>
49
- <button class="commandButton">Push app</button>
50
- </div>
51
- <div class="commandSet">
52
- <button class="commandButton">Share</button>
53
- <button class="commandButton">Feedback</button>
54
- </div>
55
- </section>
56
-
57
- <section class="pageHeader" id="home">
58
- <div>
59
- <p class="eyebrow">Maker portal concept</p>
60
- <h1>Build a documentation home that feels native to the Power Platform ecosystem.</h1>
61
- <p class="lead">This mockup treats docs as a product workspace: short paths in, task cards, status surfaces, and a familiar Microsoft-style shell rather than a marketing landing page.</p>
62
- </div>
63
- <article class="summaryCard">
64
- <span>Library summary</span>
65
- <strong>JavaScript-first Power Apps Code Apps workflow</strong>
66
- <p>Generated services, `power.config.json`, connector references, and example apps from one hub.</p>
67
- </article>
68
- </section>
69
-
70
- <section class="tabRow" aria-label="Sections">
71
- <button class="tabButton is-active" data-target="overviewPanel">Overview</button>
72
- <button class="tabButton" data-target="setupPanel">Setup</button>
73
- <button class="tabButton" data-target="examplesPanel">Examples</button>
74
- <button class="tabButton" data-target="referencePanel">Reference</button>
75
- </section>
76
-
77
- <section class="panelDeck">
78
- <div class="contentPanel is-active" id="overviewPanel">
79
- <div class="cardGrid wideGrid">
80
- <article class="infoCard accentCard">
81
- <p class="cardLabel">Why this works</p>
82
- <h2>It matches how Power Platform users already navigate products.</h2>
83
- <p>Use entry cards for install, connectors, Dataverse tables, and generated code. The surface feels like product documentation inside a maker experience, not a detached microsite.</p>
84
- </article>
85
- <article class="infoCard">
86
- <p class="cardLabel">Recommended entry points</p>
87
- <ul class="checkList">
88
- <li>Install and serve from the repo root</li>
89
- <li>Connect Dataverse or Office 365 services</li>
90
- <li>Explore starter and sample apps</li>
91
- </ul>
92
- </article>
93
- <article class="infoCard">
94
- <p class="cardLabel">At-a-glance</p>
95
- <div class="metricRow">
96
- <div><strong>5</strong><span>connector families</span></div>
97
- <div><strong>4173</strong><span>default port</span></div>
98
- <div><strong>pac</strong><span>CLI workflow</span></div>
99
- </div>
100
- </article>
101
- </div>
102
- </div>
103
-
104
- <div class="contentPanel" id="setupPanel">
105
- <div class="cardGrid">
106
- <article class="infoCard" id="quickstart">
107
- <p class="cardLabel">Quick start</p>
108
- <pre><code>npm install
109
- npm start
110
- pac auth create
111
- pac env select --environment "environment-id"</code></pre>
112
- </article>
113
- <article class="infoCard">
114
- <p class="cardLabel">Config map</p>
115
- <p>The docs can split `databaseReferences.default.cds.dataSources` and `connectionReferences` into focused cards instead of one giant JSON blob.</p>
116
- <div class="miniPills">
117
- <span>Dataverse tables</span>
118
- <span>Outlook</span>
119
- <span>SharePoint</span>
120
- <span>Groups</span>
121
- <span>Users</span>
122
- </div>
123
- </article>
124
- </div>
125
- </div>
126
-
127
- <div class="contentPanel" id="examplesPanel">
128
- <div class="cardGrid triGrid" id="examples">
129
- <article class="infoCard">
130
- <p class="cardLabel">Starter app</p>
131
- <strong>codeApp/dist/</strong>
132
- <p>Primary onboarding destination for first success.</p>
133
- </article>
134
- <article class="infoCard">
135
- <p class="cardLabel">Connector demos</p>
136
- <strong>examples/outlook Demo/dist/</strong>
137
- <p>Ideal for service-specific walkthrough pages.</p>
138
- </article>
139
- <article class="infoCard">
140
- <p class="cardLabel">App gallery</p>
141
- <strong>todo, kanban, planning poker</strong>
142
- <p>Use these to show progressive complexity.</p>
143
- </article>
144
- </div>
145
- </div>
146
-
147
- <div class="contentPanel" id="referencePanel">
148
- <div class="cardGrid" id="reference">
149
- <article class="infoCard">
150
- <p class="cardLabel">Generated files</p>
151
- <table>
152
- <tbody>
153
- <tr><td>Services</td><td>src/generated/services/*</td></tr>
154
- <tr><td>Models</td><td>src/generated/models/*</td></tr>
155
- <tr><td>Config</td><td>power.config.json</td></tr>
156
- </tbody>
157
- </table>
158
- </article>
159
- <article class="infoCard" id="connectors">
160
- <p class="cardLabel">Connector references</p>
161
- <ul class="checkList compactList">
162
- <li>shared_commondataserviceforapps</li>
163
- <li>shared_office365</li>
164
- <li>shared_sharepointonline</li>
165
- <li>shared_office365groups</li>
166
- <li>shared_office365users</li>
167
- </ul>
168
- </article>
169
- </div>
170
- </div>
171
- </section>
172
- </main>
173
- </div>
174
- </div>
175
-
176
- <script src="./script.js"></script>
177
- </body>
178
- </html>
@@ -1,20 +0,0 @@
1
- const aMakerTabs = Array.from(document.querySelectorAll('.tabButton'));
2
- const aMakerPanels = Array.from(document.querySelectorAll('.contentPanel'));
3
-
4
- const setMakerPanel = (sTargetId) => {
5
- aMakerTabs.forEach((eButton) => {
6
- const bIsActive = eButton.dataset.target === sTargetId;
7
- eButton.classList.toggle('is-active', bIsActive);
8
- });
9
-
10
- aMakerPanels.forEach((ePanel) => {
11
- const bIsActive = ePanel.id === sTargetId;
12
- ePanel.classList.toggle('is-active', bIsActive);
13
- });
14
- };
15
-
16
- aMakerTabs.forEach((eButton) => {
17
- eButton.addEventListener('click', () => {
18
- setMakerPanel(eButton.dataset.target);
19
- });
20
- });