diff --git a/.github/packages.json b/.github/packages.json index 6f52534..902cc68 100644 --- a/.github/packages.json +++ b/.github/packages.json @@ -1,7 +1,7 @@ [ { "dir": "01", - "branch": "odata", + "branch": "01-odata", "title": "OData", "runsOn": "Cloud + Standard ≥ 7.40 SP08", "syntax": "v740sp08", @@ -9,7 +9,7 @@ }, { "dir": "02", - "branch": "smart-controls", + "branch": "02-smart-controls", "title": "Smart Controls", "runsOn": "Cloud + Standard ≥ 7.40 SP08", "syntax": "v740sp08", @@ -17,7 +17,7 @@ }, { "dir": "03", - "branch": "rap", + "branch": "03-rap", "title": "RAP", "runsOn": "Cloud + Standard ≥ 7.54 (1909)", "syntax": "v754", @@ -25,7 +25,7 @@ }, { "dir": "04", - "branch": "rap-draft", + "branch": "04-rap-draft", "title": "RAP with Draft", "runsOn": "Cloud + Standard ≥ 7.54 (1909)", "syntax": "v754", @@ -33,7 +33,7 @@ }, { "dir": "05", - "branch": "business-events", + "branch": "05-business-events", "title": "Business Events", "runsOn": "Cloud + Standard ≥ 7.56 (2021)", "syntax": "v754", @@ -42,7 +42,7 @@ }, { "dir": "06", - "branch": "stateful-locks", + "branch": "06-stateful-locks", "title": "Stateful Sessions / Locks", "runsOn": "Standard only, ≥ 7.40 SP08", "syntax": "v740sp08", @@ -50,7 +50,7 @@ }, { "dir": "07", - "branch": "amc-apc", + "branch": "07-amc-apc", "title": "AMC/APC", "runsOn": "Standard only, ≥ 7.50", "syntax": "v750", @@ -58,7 +58,7 @@ }, { "dir": "08", - "branch": "mime", + "branch": "08-mime", "title": "MIME Play Audio", "runsOn": "Standard only, ≥ 7.50", "syntax": "v750", @@ -66,7 +66,7 @@ }, { "dir": "09", - "branch": "launchpad", + "branch": "09-launchpad", "title": "Launchpad", "runsOn": "Cloud + Standard ≥ 7.40 SP08", "syntax": "v740sp08", diff --git a/.github/scripts/build-package-branch.mjs b/.github/scripts/build-package-branch.mjs index 2e9d7a8..b526759 100644 --- a/.github/scripts/build-package-branch.mjs +++ b/.github/scripts/build-package-branch.mjs @@ -17,7 +17,7 @@ import { readFileSync, writeFileSync, readdirSync, rmSync } from 'node:fs'; import { join } from 'node:path'; -const REPO = 'abap2UI5/samples-ext'; +const REPO = 'abap2UI5/samples-stack'; const MAIN = `https://github.com/${REPO}/blob/main`; const SRC = 'src'; @@ -98,7 +98,7 @@ const wrap = (text) => writeFileSync( 'README.md', - `# abap2UI5 — samples-ext — ${pkg.title} + `# abap2UI5 — samples-stack — ${pkg.title} **One package, nothing else.** This branch is generated from [\`main\`](${MAIN}/README.md) and carries [\`src/${pkg.dir}\`](src/${pkg.dir}) only, so diff --git a/.github/workflows/create-package-branches.yaml b/.github/workflows/create-package-branches.yaml index ee71d1a..1ebed12 100644 --- a/.github/workflows/create-package-branches.yaml +++ b/.github/workflows/create-package-branches.yaml @@ -74,7 +74,7 @@ jobs: - run: node .github/scripts/check-overview.mjs - name: Commit and push - if: github.event_name != 'pull_request' && github.repository == 'abap2UI5/samples-ext' + if: github.event_name != 'pull_request' && github.repository == 'abap2UI5/samples-stack' run: | git config user.name 'github-actions[bot]' git config user.email 'github-actions[bot]@users.noreply.github.com' diff --git a/README.md b/README.md index 93e6e47..894f300 100644 --- a/README.md +++ b/README.md @@ -129,20 +129,22 @@ abapGit imports a **whole repository** — there is no way to pull half of one. packages and the three that need 1909, and reports activation errors for technology it never asked for. -So every package additionally lives on **its own branch**. Pick it in the abapGit -branch dropdown and you import that package, the overview app and nothing else: +So every package additionally lives on **its own branch**. Each branch carries the +number of the package it holds, so the abapGit branch dropdown lists them in the +same reading order as the table above. Pick one and you import that package, the +overview app and nothing else: | Branch | Package | Runs on | |---|---|---| -| [`odata`](../../tree/odata) | [`src/01`](src/01) — OData | Cloud + Standard ≥ 7.40 SP08 | -| [`smart-controls`](../../tree/smart-controls) | [`src/02`](src/02) — Smart Controls | Cloud + Standard ≥ 7.40 SP08 | -| [`rap`](../../tree/rap) | [`src/03`](src/03) — RAP | Cloud + Standard ≥ 7.54 (1909) | -| [`rap-draft`](../../tree/rap-draft) | [`src/04`](src/04) — RAP with Draft | Cloud + Standard ≥ 7.54 (1909) | -| [`business-events`](../../tree/business-events) | [`src/05`](src/05) — Business Events | Cloud + Standard ≥ 7.56 (2021) | -| [`stateful-locks`](../../tree/stateful-locks) | [`src/06`](src/06) — Stateful Sessions / Locks | Standard only, ≥ 7.40 SP08 | -| [`amc-apc`](../../tree/amc-apc) | [`src/07`](src/07) — AMC/APC | Standard only, ≥ 7.50 | -| [`mime`](../../tree/mime) | [`src/08`](src/08) — MIME Play Audio | Standard only, ≥ 7.50 | -| [`launchpad`](../../tree/launchpad) | [`src/09`](src/09) — Launchpad | Cloud + Standard ≥ 7.40 SP08 | +| [`01-odata`](../../tree/01-odata) | [`src/01`](src/01) — OData | Cloud + Standard ≥ 7.40 SP08 | +| [`02-smart-controls`](../../tree/02-smart-controls) | [`src/02`](src/02) — Smart Controls | Cloud + Standard ≥ 7.40 SP08 | +| [`03-rap`](../../tree/03-rap) | [`src/03`](src/03) — RAP | Cloud + Standard ≥ 7.54 (1909) | +| [`04-rap-draft`](../../tree/04-rap-draft) | [`src/04`](src/04) — RAP with Draft | Cloud + Standard ≥ 7.54 (1909) | +| [`05-business-events`](../../tree/05-business-events) | [`src/05`](src/05) — Business Events | Cloud + Standard ≥ 7.56 (2021) | +| [`06-stateful-locks`](../../tree/06-stateful-locks) | [`src/06`](src/06) — Stateful Sessions / Locks | Standard only, ≥ 7.40 SP08 | +| [`07-amc-apc`](../../tree/07-amc-apc) | [`src/07`](src/07) — AMC/APC | Standard only, ≥ 7.50 | +| [`08-mime`](../../tree/08-mime) | [`src/08`](src/08) — MIME Play Audio | Standard only, ≥ 7.50 | +| [`09-launchpad`](../../tree/09-launchpad) | [`src/09`](src/09) — Launchpad | Cloud + Standard ≥ 7.40 SP08 | The overview app ships on every branch and keeps listing **all 31 samples**, so it stays the catalogue of what the other branches hold — the ones that are not on diff --git a/src/01/README.md b/src/01/README.md index 8672926..3e145e0 100644 --- a/src/01/README.md +++ b/src/01/README.md @@ -14,7 +14,7 @@ view and the service path, nothing more. **Release:** Cloud + Standard ≥ 7.40 SP08. The sample is a view and two service paths, so nothing here reaches past the ABAP the package is written in. -**Branch:** [`odata`](https://github.com/abap2UI5/samples-ext/tree/odata) +**Branch:** [`01-odata`](https://github.com/abap2UI5/samples-stack/tree/01-odata) — this package alone, without the other eight on your system. An activated OData V2 service. The sample points at the services of the SAP flight diff --git a/src/02/README.md b/src/02/README.md index 4ee4f7c..a2563a1 100644 --- a/src/02/README.md +++ b/src/02/README.md @@ -15,7 +15,7 @@ help and smart filtering for free. side of these nine samples asks for nothing beyond the release the package is written in — what they need is the service, not the platform. -**Branch:** [`smart-controls`](https://github.com/abap2UI5/samples-ext/tree/smart-controls) +**Branch:** [`02-smart-controls`](https://github.com/abap2UI5/samples-stack/tree/02-smart-controls) — this package alone, without the other eight on your system. - **SAPUI5**, since `sap.ui.comp` is part of the SAPUI5 distribution. diff --git a/src/03/README.md b/src/03/README.md index b928621..35c43f9 100644 --- a/src/03/README.md +++ b/src/03/README.md @@ -23,7 +23,7 @@ The draft enabled half lives next door in [`04` RAP with Draft](../04/README.md) **Release:** Cloud + Standard ≥ 7.54 (1909) — that is what EML asks for. -**Branch:** [`rap`](https://github.com/abap2UI5/samples-ext/tree/rap) +**Branch:** [`03-rap`](https://github.com/abap2UI5/samples-stack/tree/03-rap) — this package alone, without the other eight on your system. ABAP Platform >= 1909 or a BTP ABAP Environment. The business object diff --git a/src/04/README.md b/src/04/README.md index 29c2029..ac920b3 100644 --- a/src/04/README.md +++ b/src/04/README.md @@ -15,7 +15,7 @@ whole lifecycle fits in a handful of statements. **Release:** Cloud + Standard ≥ 7.54 (1909), the same as [`03`](../03/README.md) — draft handling adds nothing on top of EML. -**Branch:** [`rap-draft`](https://github.com/abap2UI5/samples-ext/tree/rap-draft) +**Branch:** [`04-rap-draft`](https://github.com/abap2UI5/samples-stack/tree/04-rap-draft) — this package alone, without the other eight on your system. ABAP Platform >= 1909 or a BTP ABAP Environment. The draft enabled business object diff --git a/src/05/README.md b/src/05/README.md index f9d2d87..075fd9c 100644 --- a/src/05/README.md +++ b/src/05/README.md @@ -16,7 +16,7 @@ the second shows what arrived. RAP does the wiring in between. **Release:** Cloud + Standard ≥ 7.56 (2021) — the highest floor in this repository, and the only package whose limit is not EML. -**Branch:** [`business-events`](https://github.com/abap2UI5/samples-ext/tree/business-events) +**Branch:** [`05-business-events`](https://github.com/abap2UI5/samples-stack/tree/05-business-events) — this package alone, without the other eight on your system. ABAP Platform >= 1909 or a BTP ABAP Environment covers the EML part — but this diff --git a/src/06/README.md b/src/06/README.md index 3c26781..2cd0b64 100644 --- a/src/06/README.md +++ b/src/06/README.md @@ -17,7 +17,7 @@ in the framework; nothing has to be configured up front. function modules nor a stateful ICF session is a released cloud API — this package is on-premise by design, not by omission. -**Branch:** [`stateful-locks`](https://github.com/abap2UI5/samples-ext/tree/stateful-locks) +**Branch:** [`06-stateful-locks`](https://github.com/abap2UI5/samples-stack/tree/06-stateful-locks) — this package alone, without the other eight on your system. ABAP Standard (on-premise). The locks go through the function modules diff --git a/src/07/README.md b/src/07/README.md index 9d1db22..003ebdd 100644 --- a/src/07/README.md +++ b/src/07/README.md @@ -17,7 +17,7 @@ already provides and stays the UI in front of it. ABAP Cloud counterpart; the 7.50 comes from the ABAP the two classes are written in, the channels themselves arrived earlier. -**Branch:** [`amc-apc`](https://github.com/abap2UI5/samples-ext/tree/amc-apc) +**Branch:** [`07-amc-apc`](https://github.com/abap2UI5/samples-stack/tree/07-amc-apc) — this package alone, without the other eight on your system. **Setup:** activate the ICF service `/sap/bc/apc/sap/z2ui5_apc_smp_2` in `SICF`. The diff --git a/src/08/README.md b/src/08/README.md index bc08847..c81bee0 100644 --- a/src/08/README.md +++ b/src/08/README.md @@ -16,7 +16,7 @@ repository stays where it is; the app only points at it. on-premise: in ABAP Cloud there is neither the repository nor the node to reach it through. -**Branch:** [`mime`](https://github.com/abap2UI5/samples-ext/tree/mime) +**Branch:** [`08-mime`](https://github.com/abap2UI5/samples-stack/tree/08-mime) — this package alone, without the other eight on your system. **Setup:** activate the ICF service `/SAP/PUBLIC/BC/ABAP/mime_demo` in `SICF`. The diff --git a/src/09/README.md b/src/09/README.md index 46b019e..1c364cc 100644 --- a/src/09/README.md +++ b/src/09/README.md @@ -18,7 +18,7 @@ the four samples here show what the launchpad adds when it is the one you are in framework, so what decides here is whether you have a launchpad, not which ABAP release serves it. -**Branch:** [`launchpad`](https://github.com/abap2UI5/samples-ext/tree/launchpad) +**Branch:** [`09-launchpad`](https://github.com/abap2UI5/samples-stack/tree/09-launchpad) — this package alone, without the other eight on your system. A **Fiori Launchpad** with a tile pointing at abap2UI5 — an on-premise FLP diff --git a/src/package.devc.xml b/src/package.devc.xml index 047fc62..331bd0d 100644 --- a/src/package.devc.xml +++ b/src/package.devc.xml @@ -3,7 +3,7 @@ - abap2UI5 - samples-ext + abap2UI5 - samples-stack diff --git a/src/z2ui5_cl_smpe_app_00.clas.abap b/src/z2ui5_cl_smpe_app_00.clas.abap index 309be73..1ea6d2d 100644 --- a/src/z2ui5_cl_smpe_app_00.clas.abap +++ b/src/z2ui5_cl_smpe_app_00.clas.abap @@ -1,4 +1,4 @@ -"!

abap2UI5 samples-ext 00 - overview

+"!

abap2UI5 samples-stack 00 - overview

"! The entry point of this repository: every sample of every package in one "! list, one press away. Start it with ?app_start=z2ui5_cl_smpe_app_00. "! @@ -250,7 +250,7 @@ CLASS z2ui5_cl_smpe_app_00 IMPLEMENTATION. )->a( n = `height` v = `100%` )->open( `Shell` )->open( `Page` - )->a( n = `title` v = `abap2UI5 - samples-ext - 00 Overview` + )->a( n = `title` v = `abap2UI5 - samples-stack - 00 Overview` )->a( n = `class` v = `sapUiContentPadding` ). " the button sits in the page header, so it stays reachable no matter diff --git a/src/z2ui5_cl_smpe_app_00.clas.xml b/src/z2ui5_cl_smpe_app_00.clas.xml index 084b657..caa7956 100644 --- a/src/z2ui5_cl_smpe_app_00.clas.xml +++ b/src/z2ui5_cl_smpe_app_00.clas.xml @@ -5,7 +5,7 @@ Z2UI5_CL_SMPE_APP_00 E - abap2UI5 samples-ext 00 - overview + abap2UI5 samples-stack 00 - overview 1 X X