ecoportal-api-graphql 1.3.12 → 1.3.14

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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/.ai-assistance/bridge/archive/oscar-a1b2c3d-gitlab-mcp-doc-update.inbox.md +29 -29
  3. data/.ai-assistance/bridge/archive/oscar-c912c25-gemini-design-review.inbox.md +42 -42
  4. data/.ai-assistance/projects/compat-layer-audit/COMPAT_AUDIT.md +244 -0
  5. data/.ai-assistance/projects/template-model-logic/CATEGORY_CATALOG.md +236 -0
  6. data/.ai-assistance/projects/template-model-logic/CLASSIFICATION_SPIKE.md +243 -0
  7. data/.ai-assistance/projects/template-model-logic/DESIGN_NOTE.md +154 -0
  8. data/.ai-assistance/scripts/bridge-inbox-check.sh +75 -0
  9. data/.ai-assistance/skills/project-self-docs/SKILL.md +181 -0
  10. data/.ai-assistance/skills/project-self-docs/scripts/self_docs_scan.py +378 -0
  11. data/.ai-assistance/standards-version.json +9 -9
  12. data/.claude/settings.json +150 -146
  13. data/.gitignore +37 -37
  14. data/.gitlab-ci.yml +45 -0
  15. data/CHANGELOG.md +43 -0
  16. data/CLAUDE.md +1 -0
  17. data/docs/self-docs/ARCHITECTURE.md +3 -3
  18. data/docs/self-docs/CHANGES.jsonl +5 -0
  19. data/docs/self-docs/COMPLIANCE.md +79 -0
  20. data/docs/self-docs/CONVENTIONS.md +3 -3
  21. data/docs/self-docs/INTEGRATIONS.md +17 -15
  22. data/docs/self-docs/OPERATIONS.md +76 -0
  23. data/docs/self-docs/OVERVIEW.md +16 -3
  24. data/docs/self-docs/STATUS.md +9 -5
  25. data/docs/self-docs/self-docs-index.json +20 -8
  26. data/lib/ecoportal/api/common/graphql/http_client.rb +189 -177
  27. data/lib/ecoportal/api/graphql/base/location_classification_type.rb +15 -15
  28. data/lib/ecoportal/api/graphql/base/location_structure.rb +27 -27
  29. data/lib/ecoportal/api/graphql/base/organization.rb +15 -15
  30. data/lib/ecoportal/api/graphql/base.rb +35 -35
  31. data/lib/ecoportal/api/graphql/builder/contractor_entity.rb +41 -41
  32. data/lib/ecoportal/api/graphql/connection/action.rb +11 -11
  33. data/lib/ecoportal/api/graphql/connection/action_category.rb +11 -11
  34. data/lib/ecoportal/api/graphql/connection/contractor_entity.rb +11 -11
  35. data/lib/ecoportal/api/graphql/connection/page.rb +11 -11
  36. data/lib/ecoportal/api/graphql/connection/person_member.rb +11 -11
  37. data/lib/ecoportal/api/graphql/connection/preview_page.rb +11 -11
  38. data/lib/ecoportal/api/graphql/connection.rb +17 -17
  39. data/lib/ecoportal/api/graphql/fragment/location_node.rb +26 -26
  40. data/lib/ecoportal/api/graphql/input/contractor_entity.rb +14 -14
  41. data/lib/ecoportal/api/graphql/input/workflow_command/add_stage.rb +18 -18
  42. data/lib/ecoportal/api/graphql/input/workflow_command/edit_field_configuration.rb +21 -21
  43. data/lib/ecoportal/api/graphql/input/workflow_command/edit_page.rb +28 -28
  44. data/lib/ecoportal/api/graphql/input/workflow_command/edit_page_creator_permissions.rb +18 -18
  45. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/cross_reference.rb +23 -23
  46. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/date.rb +20 -20
  47. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/image_gallery.rb +20 -20
  48. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/plain_text.rb +20 -20
  49. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/rich_text.rb +20 -20
  50. data/lib/ecoportal/api/graphql/input/workflow_command/field_config/select.rb +20 -20
  51. data/lib/ecoportal/api/graphql/input/workflow_command/move_field.rb +18 -18
  52. data/lib/ecoportal/api/graphql/input/workflow_command/reorder_forces.rb +18 -18
  53. data/lib/ecoportal/api/graphql/input/workflow_command/reorder_section.rb +18 -18
  54. data/lib/ecoportal/api/graphql/input/workflow_command.rb +251 -251
  55. data/lib/ecoportal/api/graphql/input.rb +24 -24
  56. data/lib/ecoportal/api/graphql/logic/connection.rb +34 -34
  57. data/lib/ecoportal/api/graphql/model/person_member.rb +15 -15
  58. data/lib/ecoportal/api/graphql/model.rb +30 -30
  59. data/lib/ecoportal/api/graphql/mutation/contractor_entity.rb +14 -14
  60. data/lib/ecoportal/api/graphql/payload/contractor_entity.rb +14 -14
  61. data/lib/ecoportal/api/graphql/query/location_structures.rb +57 -57
  62. data/lib/ecoportal/api/graphql/query.rb +27 -27
  63. data/lib/ecoportal/api/graphql_version.rb +1 -1
  64. metadata +11 -1
@@ -1,34 +1,34 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Logic
5
- class Connection < Logic::BaseModel
6
- class GenericNode
7
- def initialize(*_args, **_kargs)
8
- raise "Missuse error. You should define a node_class for a class that inherits from GraphqlConnection class."
9
- end
10
- end
11
-
12
- include Enumerable
13
-
14
- class_resolver :node_class, GenericNode
15
-
16
- passthrough :edges
17
- passthrough :totalCount
18
- embeds_many :nodes, klass: :node_class
19
- embeds_one :pageInfo, klass: Base::PageInfo
20
-
21
- def empty?
22
- count < 1
23
- end
24
-
25
- def each(&block)
26
- return to_enum(:each) unless block
27
-
28
- nodes.each(&block)
29
- end
30
- end
31
- end
32
- end
33
- end
34
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Logic
5
+ class Connection < Logic::BaseModel
6
+ class GenericNode
7
+ def initialize(*_args, **_kargs)
8
+ raise "Missuse error. You should define a node_class for a class that inherits from GraphqlConnection class."
9
+ end
10
+ end
11
+
12
+ include Enumerable
13
+
14
+ class_resolver :node_class, GenericNode
15
+
16
+ passthrough :edges
17
+ passthrough :totalCount
18
+ embeds_many :nodes, klass: :node_class
19
+ embeds_one :pageInfo, klass: Base::PageInfo
20
+
21
+ def empty?
22
+ count < 1
23
+ end
24
+
25
+ def each(&block)
26
+ return to_enum(:each) unless block
27
+
28
+ nodes.each(&block)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -1,15 +1,15 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Model
5
- class PersonMember < Base::PersonMember
6
- embeds_one :contractorOrganization, klass: "Ecoportal::API::GraphQL::Model::ContractorEntity"
7
- embeds_one :account, klass: Model::Account
8
-
9
- # embeds_many :privateFields, enum_class: Ecoportal::API::GraphQL::Model::MemberSchemaFields
10
- # embeds_many :publicFields, enum_class: Ecoportal::API::GraphQL::Model::MemberSchemaFields
11
- end
12
- end
13
- end
14
- end
15
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Model
5
+ class PersonMember < Base::PersonMember
6
+ embeds_one :contractorOrganization, klass: "Ecoportal::API::GraphQL::Model::ContractorEntity"
7
+ embeds_one :account, klass: Model::Account
8
+
9
+ # embeds_many :privateFields, enum_class: Ecoportal::API::GraphQL::Model::MemberSchemaFields
10
+ # embeds_many :publicFields, enum_class: Ecoportal::API::GraphQL::Model::MemberSchemaFields
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -1,30 +1,30 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Model
5
- end
6
- end
7
- end
8
- end
9
-
10
- require_relative 'model/location_node'
11
- require_relative 'model/location_structure'
12
- require_relative 'model/account'
13
- require_relative 'model/user'
14
- require_relative 'model/person_member'
15
- require_relative 'model/file_attachment'
16
- require_relative 'model/file_container'
17
- require_relative 'model/field'
18
- require_relative 'model/page'
19
- require_relative 'model/page_union'
20
- require_relative 'model/preview_page'
21
- require_relative 'model/resource'
22
- require_relative 'model/action'
23
- require_relative 'model/contractor_entity'
24
- require_relative 'model/organization'
25
-
26
- require_relative 'model/register'
27
- require_relative 'model/preset_view'
28
-
29
- require_relative 'model/ai_summary_version'
30
- require_relative 'model/pages_workflow'
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Model
5
+ end
6
+ end
7
+ end
8
+ end
9
+
10
+ require_relative 'model/location_node'
11
+ require_relative 'model/location_structure'
12
+ require_relative 'model/account'
13
+ require_relative 'model/user'
14
+ require_relative 'model/person_member'
15
+ require_relative 'model/file_attachment'
16
+ require_relative 'model/file_container'
17
+ require_relative 'model/field'
18
+ require_relative 'model/page'
19
+ require_relative 'model/page_union'
20
+ require_relative 'model/preview_page'
21
+ require_relative 'model/resource'
22
+ require_relative 'model/action'
23
+ require_relative 'model/contractor_entity'
24
+ require_relative 'model/organization'
25
+
26
+ require_relative 'model/register'
27
+ require_relative 'model/preset_view'
28
+
29
+ require_relative 'model/ai_summary_version'
30
+ require_relative 'model/pages_workflow'
@@ -1,14 +1,14 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Mutation
5
- module ContractorEntity
6
- end
7
- end
8
- end
9
- end
10
- end
11
-
12
- require_relative 'contractor_entity/create'
13
- require_relative 'contractor_entity/destroy'
14
- require_relative 'contractor_entity/update'
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Mutation
5
+ module ContractorEntity
6
+ end
7
+ end
8
+ end
9
+ end
10
+ end
11
+
12
+ require_relative 'contractor_entity/create'
13
+ require_relative 'contractor_entity/destroy'
14
+ require_relative 'contractor_entity/update'
@@ -1,14 +1,14 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Payload
5
- module ContractorEntity
6
- end
7
- end
8
- end
9
- end
10
- end
11
-
12
- require_relative 'contractor_entity/create'
13
- require_relative 'contractor_entity/destroy'
14
- require_relative 'contractor_entity/update'
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Payload
5
+ module ContractorEntity
6
+ end
7
+ end
8
+ end
9
+ end
10
+ end
11
+
12
+ require_relative 'contractor_entity/create'
13
+ require_relative 'contractor_entity/destroy'
14
+ require_relative 'contractor_entity/update'
@@ -1,57 +1,57 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Query
5
- class LocationStructures < Logic::QueryArray
6
- accepted_params :includeArchived, :includeUnpublished, default: false
7
- accepted_params :includeArchivedNodes, default: true
8
-
9
- field_name :structures
10
-
11
- class_resolver :item_class, Model::LocationStructure
12
-
13
- private
14
-
15
- def basic_block(&block)
16
- final_block = block || default_query_block
17
- proc {
18
- query(
19
- includeArchived: :boolean,
20
- includeUnpublished: :boolean,
21
- includeArchivedNodes: :boolean
22
- ) {
23
- currentOrganization {
24
- locations {
25
- structures(
26
- includeArchived: :includeArchived,
27
- includeUnpublished: :includeUnpublished,
28
- &final_block
29
- )
30
- }
31
- }
32
- }
33
- }
34
- end
35
-
36
- # At the moment it always retrieves archived nodes!!
37
- # @note this is on purpose, as via API
38
- # there isn't much sense in not including archived nodes.
39
- def default_query_block
40
- proc {
41
- id
42
- name
43
- archived
44
- weight
45
- visitorManagementEnabled
46
- nodes(
47
- includeArchived: :includeArchivedNodes
48
- ) {
49
- spread :LocationNode
50
- }
51
- }
52
- end
53
- end
54
- end
55
- end
56
- end
57
- end
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Query
5
+ class LocationStructures < Logic::QueryArray
6
+ accepted_params :includeArchived, :includeUnpublished, default: false
7
+ accepted_params :includeArchivedNodes, default: true
8
+
9
+ field_name :structures
10
+
11
+ class_resolver :item_class, Model::LocationStructure
12
+
13
+ private
14
+
15
+ def basic_block(&block)
16
+ final_block = block || default_query_block
17
+ proc {
18
+ query(
19
+ includeArchived: :boolean,
20
+ includeUnpublished: :boolean,
21
+ includeArchivedNodes: :boolean
22
+ ) {
23
+ currentOrganization {
24
+ locations {
25
+ structures(
26
+ includeArchived: :includeArchived,
27
+ includeUnpublished: :includeUnpublished,
28
+ &final_block
29
+ )
30
+ }
31
+ }
32
+ }
33
+ }
34
+ end
35
+
36
+ # At the moment it always retrieves archived nodes!!
37
+ # @note this is on purpose, as via API
38
+ # there isn't much sense in not including archived nodes.
39
+ def default_query_block
40
+ proc {
41
+ id
42
+ name
43
+ archived
44
+ weight
45
+ visitorManagementEnabled
46
+ nodes(
47
+ includeArchived: :includeArchivedNodes
48
+ ) {
49
+ spread :LocationNode
50
+ }
51
+ }
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -1,27 +1,27 @@
1
- module Ecoportal
2
- module API
3
- class GraphQL
4
- module Query
5
- end
6
- end
7
- end
8
- end
9
-
10
- require_relative 'query/location_classifications'
11
- require_relative 'query/location_structure'
12
- require_relative 'query/location_structures'
13
- require_relative 'query/action_categories'
14
- require_relative 'query/action'
15
- require_relative 'query/actions'
16
- require_relative 'query/contractor_entities'
17
- require_relative 'query/page'
18
- require_relative 'query/pages'
19
- require_relative 'query/templates'
20
- require_relative 'query/register_preview_pages'
21
- require_relative 'query/page_delta'
22
- require_relative 'query/register_preset_views'
23
-
24
- require_relative 'query/file_upload_signature'
25
-
26
- require_relative 'query/page_with_forces'
27
- require_relative 'query/pages_workflow_commands'
1
+ module Ecoportal
2
+ module API
3
+ class GraphQL
4
+ module Query
5
+ end
6
+ end
7
+ end
8
+ end
9
+
10
+ require_relative 'query/location_classifications'
11
+ require_relative 'query/location_structure'
12
+ require_relative 'query/location_structures'
13
+ require_relative 'query/action_categories'
14
+ require_relative 'query/action'
15
+ require_relative 'query/actions'
16
+ require_relative 'query/contractor_entities'
17
+ require_relative 'query/page'
18
+ require_relative 'query/pages'
19
+ require_relative 'query/templates'
20
+ require_relative 'query/register_preview_pages'
21
+ require_relative 'query/page_delta'
22
+ require_relative 'query/register_preset_views'
23
+
24
+ require_relative 'query/file_upload_signature'
25
+
26
+ require_relative 'query/page_with_forces'
27
+ require_relative 'query/pages_workflow_commands'
@@ -1,5 +1,5 @@
1
1
  module Ecoportal
2
2
  module API
3
- GRAPQL_VERSION = '1.3.12'.freeze
3
+ GRAPQL_VERSION = '1.3.14'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ecoportal-api-graphql
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.12
4
+ version: 1.3.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oscar Segura
@@ -262,6 +262,7 @@ files:
262
262
  - ".ai-assistance/projects/api-v2-to-graphql-migration/UPSTREAM.md"
263
263
  - ".ai-assistance/projects/api-v2-to-graphql-migration/notes/csv-template-pipeline-design.md"
264
264
  - ".ai-assistance/projects/api-v2-to-graphql-migration/notes/cutover-usecase-gap-audit.md"
265
+ - ".ai-assistance/projects/compat-layer-audit/COMPAT_AUDIT.md"
265
266
  - ".ai-assistance/projects/dynamic-model-generation/INTENT.md"
266
267
  - ".ai-assistance/projects/eco-helpers-compat/INTENT.md"
267
268
  - ".ai-assistance/projects/eco-helpers-compat/MIGRATION_GUIDE.md"
@@ -291,9 +292,13 @@ files:
291
292
  - ".ai-assistance/projects/template-maintenance/DESIGN.md"
292
293
  - ".ai-assistance/projects/template-maintenance/PHASE0-FINDINGS.md"
293
294
  - ".ai-assistance/projects/template-maintenance/README.md"
295
+ - ".ai-assistance/projects/template-model-logic/CATEGORY_CATALOG.md"
296
+ - ".ai-assistance/projects/template-model-logic/CLASSIFICATION_SPIKE.md"
297
+ - ".ai-assistance/projects/template-model-logic/DESIGN_NOTE.md"
294
298
  - ".ai-assistance/projects/workflow-space/TODO.md"
295
299
  - ".ai-assistance/reinstall-claude-desktop-windows.md"
296
300
  - ".ai-assistance/scripts/CLAUDE.md"
301
+ - ".ai-assistance/scripts/bridge-inbox-check.sh"
297
302
  - ".ai-assistance/scripts/bridge-init.sh"
298
303
  - ".ai-assistance/scripts/bridge-status.sh"
299
304
  - ".ai-assistance/scripts/capabilities-check.ts"
@@ -323,6 +328,8 @@ files:
323
328
  - ".ai-assistance/skills/graphql-schema-analysis/SKILL.md"
324
329
  - ".ai-assistance/skills/procedural-memory/SKILL.md"
325
330
  - ".ai-assistance/skills/project-cycle/SKILL.md"
331
+ - ".ai-assistance/skills/project-self-docs/SKILL.md"
332
+ - ".ai-assistance/skills/project-self-docs/scripts/self_docs_scan.py"
326
333
  - ".ai-assistance/skills/refactor/SKILL.md"
327
334
  - ".ai-assistance/skills/rubocop/SKILL.md"
328
335
  - ".ai-assistance/skills/ruby-scripting/SKILL.md"
@@ -334,6 +341,7 @@ files:
334
341
  - ".env.example"
335
342
  - ".gitattributes"
336
343
  - ".gitignore"
344
+ - ".gitlab-ci.yml"
337
345
  - ".markdownlint.json"
338
346
  - ".rspec"
339
347
  - ".rubocop.yml"
@@ -350,8 +358,10 @@ files:
350
358
  - bin/setup.ps1
351
359
  - docs/self-docs/ARCHITECTURE.md
352
360
  - docs/self-docs/CHANGES.jsonl
361
+ - docs/self-docs/COMPLIANCE.md
353
362
  - docs/self-docs/CONVENTIONS.md
354
363
  - docs/self-docs/INTEGRATIONS.md
364
+ - docs/self-docs/OPERATIONS.md
355
365
  - docs/self-docs/OVERVIEW.md
356
366
  - docs/self-docs/STATUS.md
357
367
  - docs/self-docs/self-docs-index.json